[SQLSERVER] sqlserver T-SQL 执行detach/attach,copy 命令

来源:这里教程网 时间:2026-03-02 11:03:49 作者:
declare @backupdb nvarchar(200)
declare @dfstr    nvarchar(200)
declare @dfdesstr nvarchar(200)
declare @lgstr    nvarchar(200)
declare @cmdstr   nvarchar(200)
set @backupdb='xxxx_LOG_' + convert(varchar(30),getdate()-2,112) + '_000000'
set @dfstr   ='D:\xxxx_LOG\xxxx_LOG_' + convert(varchar(30),getdate()-2,112) + '_000000.mdf'
set @dfdesstr='D:\xxxxIDB_Backup\xxxx_LOG_' + convert(varchar(30),getdate()-2,112) + '_000000.mdf'
set @lgstr   ='D:\xxxx_LOG\xxxx_LOG_' + convert(varchar(30),getdate()-2,112) + '_000000_log.mdf'
set @cmdstr  ='copy '+@dfstr+' '+@dfdesstr
exec sp_detach_db @backupdb
exec master..xp_cmdshell @cmdstr
exec sp_attach_db @backupdb,@dfstr,@lgstr

上面一串命令执行的时候,会提示access is denies.应该和权限有关系,
由于是服务器,所以没有动.下次有机会找一台测试试一下

相关推荐