34,590
社区成员
发帖
与我相关
我的任务
分享
ALTER PROCEDURE USP_DBBackup
@BackPath nvarchar(100)
@BackName nvarchar(50)
AS
SET NOCOUNT ON
declare cur cursor for
select name from master..SysDataBases --获取数据库名.
declare @cur nvarchar(4000)
open cur
fetch next from cur into @cur
while @@fetch_status = 0
begin
exec(@cur)
fetch next from cur into @cur
end
declare @name nvarchar(4000)
set @name = ''
select @name += @cur + ','
backup database Left(@name, Len(@name) - 1) to disk= @BackPath + '\'+@BackName --备份以上获得的数据库.
ALTER PROCEDURE USP_DBBackup
@BackPath nvarchar(100),
@BackName nvarchar(50)
AS
SET NOCOUNT ON
declare @name nvarchar(4000)
select @name = rtrim(ltrim(@name))
if exists (SELECT Name FROM Master..SysDatabases where name = 'PersonnelManagementSystem')
set @name= 'PersonnelManagementSystem'
declare @outpath nvarchar(4000)
select @outpath = @BackPath +'\'+ @BackName
backup database @name to disk= @outpath
ALTER PROCEDURE USP_DBBackup
@BackPath nvarchar(100),
@BackName nvarchar(50)
AS
SET NOCOUNT ON
declare @name nvarchar(4000)
select @name = rtrim(ltrim(@name))
if exists (select * from sysdatabases where name = 'PersonnelManagementSystem')
set @name= 'PersonnelManagementSystem'
declare @outpath nvarchar(4000)
select @outpath = @BackPath +'\'+ @BackName
backup database PersonnelManagementSystem to disk= @outpath
//最后一行,不管 是 PersonnelManagementSystem 还是 @name,都报这样的错:
An attempt to attach an auto-named database for file E:\PersonnelManagementSystem\PersonnelManagementSystem\PersonnelManagementSystem\DB_PersonnelManagementSystem.mdf failed. A database with the same name exists, or specified file cannot be opened, or it is located on UNC share.
但是语句:select * from sysdatabases where name = 'PersonnelManagementSystem',我单独测试是有值的...何解?alter PROCEDURE USP_DBBackup
@BackPath nvarchar(100),
@BackName nvarchar(50)
AS
SET NOCOUNT ON
declare @name nvarchar(4000)
select @name = rtrim(ltrim(@name))
if exists (select * from sysdatabases where name = 'YJUIDB')
set @name= 'YJUIDB'
declare @outpath nvarchar(4000)
select @outpath = @BackPath +'\'+ @BackName
backup database @name to disk= @outpath