用于删除数据库,dirs的脚本,然后恢复默认数据库,dirs

时间:2016-11-03 05:00:02

标签: sql sql-server-2012

操作系统:使用SQL Server 2012的Windows Server 2012

我最近控制了一个培训环境,我需要一个执行以下操作的脚本:

我。从SQL 2012中删除当前数据库 II。删除2x windows DIR' s III。将缺省状态数据库还原到SQL2012 IV。将2x Windows Dirs复制回最近删除的DIR

任何帮助将不胜感激:)

1 个答案:

答案 0 :(得分:0)

这应该给你一个很好的起点

DECLARE @cmd varchar(8000)
DECLARE @Copycmd varchar(8000)
DECLARE @DeleteDir varchar(256)
SET @DeleteDir = 'C:\Test\'
SET @Deletecmd = 'RMDIR ' + @DeleteDir 
SET @CopyCMD = 'xcopy "C:\1\*" "C:\2\" /i /s /e /h /T'

EXEC master.dbo.xp_cmdshell @Deletecmd
GO
USE [master]
GO
ALTER DATABASE [my_db_name] SET  SINGLE_USER WITH ROLLBACK IMMEDIATE
GO
USE [master]
GO
DROP DATABASE [my_db_name]
GO
RESTORE DATABASE my_db_name from disk='d:\backups\my_backups.bak' with file=1
GO
EXEC master.dbo.xp_cmdshell @CopyCMD