sqlserver数据库还原(sql语句版)
1、第一步:定义需要的变量
declare @disk nvarchar(300), --备份文件的路径
@DATABASE NVARCHAR(50), --将备份文件还原到那个数据库
@SQL1 NVARCHAR(200), --设置限制访问状态为single_user
@SQL2 NVARCHAR(200), --还原操作 sql
@SQL3 NVARCHAR(200) --设置限制访问状态为multi_user

2、第二步:初始化变量,这里的值根据自己的情况修改
set @disk='C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Backup\test.bak' --需要还原的账套的备份文件路径
SET @DATABASE='test' --需要还原的数据库

3、第三步:拼装sql语句
SET @SQL1 ='ALTER DATABASE '+@DATABASE
+' SET SINGLE_USER WITH ROLLBACK IMMEDIATE'
SET @SQL2='RESTORE DATABASE '+@DATABASE
+' FROM DISK=@disk'+' with replace'
SET @SQL3 ='ALTER DATABASE '+@DATABASE+' SET MULTI_USER'

4、第四步:执行sql语句
EXEC SP_EXECUTESQL @SQL1
EXEC SP_EXECUTESQL @SQL2, N'@disk nvarchar(300)',@disk;
EXEC SP_EXECUTESQL @SQL3

5、第五步:还原成功

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:73
阅读量:151
阅读量:45
阅读量:147
阅读量:194