SQLServer 数据库备份还原脚本

--数据库备份
BACKUP DATABASE demo TO DISK='E:\demo.bak'


--数据库还原
declare @DBName varchar(20)
declare @Name varchar(50)
declare @NamePath varchar(500)
declare @LogName varchar(50)
declare @LogNamePath varchar(500)
declare @soursePath varchar(500)
set @DBName = 'demo'
set @soursePath = 'E:\demo.bak'
SELECT @Name = name,@NamePath = Physical_name FROM master.sys.master_files WHERE database_id = DB_ID(@DBName) and [file_id] = 1
SELECT @LogName = name,@LogNamePath = Physical_name FROM master.sys.master_files WHERE database_id = DB_ID(@DBName) and [file_id] = 2

RESTORE DATABASE demo
FROM DISK = @soursePath
WITH FILE = 1,
MOVE @Name TO @NamePath,
MOVE @LogName TO @LogNamePath,
NOUNLOAD,REPLACE, STATS = 10
原文地址:https://www.cnblogs.com/ShenJH/p/2235067.html