--返回由备份集内包含的数据库和日志文件列表组成的结果集。
--主要获得逻辑文件名
USE master
RESTORE FILELISTONLY
FROM DISK = 'g:\back.Bak'
Go
************************************************
/**//*
利用bak恢复数据库,强制还原(REPLACE)
STATS = 10 每完成10%显示一条记录
DBTest和DBTest_log是上面g:\back.Bak里的逻辑文件
*/
USE master
RESTORE DATABASE DB
FROM DISK = 'g:\back.Bak'
WITH MOVE 'DBTest' TO 'E:\Program Files\Microsoft SQL Server2005\Data\DB.mdf',
MOVE 'DBTest_log' TO 'E:\Program Files\Microsoft SQL Server2005\Data\DB_log.ldf',
STATS = 10, REPLACE
GO
++++++++++++++++++++++++++++++++ /**//*
备份数据DB 到.bak文件。然后利用此bak文件恢复一个新的数据库DBTest。
*/
USE master
BACKUP DATABASE DB
TO DISK = 'g:\DBBack0930.bak'
RESTORE FILELISTONLY
FROM DISK = 'g:\DBBack0930.bak'
RESTORE DATABASE DBTest
FROM DISK = 'g:\DBBack0930.bak'
WITH MOVE 'DBTest' TO 'E:\Program Files\Microsoft SQL Server2005\Data\DBTest.mdf',
MOVE 'DBTest_log' TO 'E:\Program Files\Microsoft SQL Server2005\Data\DBTest_log.ldf'
GO
---******************************
存储过程
SET ANSI_NULLS ON
SET QUOTED_IDENTIFIER ON
go
/*可以强制还原数据库,也可以利用备份文件重新创建一个数据库*/
ALTER PROCEDURE [dbo].[restoreDB]
(
--@path NVARCHAR(32) ,
@name NVARCHAR(64) ,--数据库备份的名称
@mdfName NVARCHAR(64) ,--物理文件mdf的名称
@ldfName NVARCHAR(64)--物理文件ldf的名称
)
AS
BEGIN
DECLARE @path NVARCHAR(64)--数据库备份的地址
DECLARE @mdfPath NVARCHAR(64)--mdf文件的存放地址
DECLARE @ldfPath NVARCHAR(64)--ldf文件的存放地址
SET @path = 'E:\DB\' + @name + '.bak'
SET @mdfPath = 'E:\DB\' + @mdfName + '.mdf'
SET @ldfPath = 'E:\DB\' + @ldfName + '.ldf'
--RESTORE FILELISTONLY FROM DISK = @path --获取逻辑文件的名称
RESTORE DATABASE @mdfName FROM DISK=@path WITH STATS = 10,REPLACE,--replace表示强制替换,STATS = 10表示每进行10%提示一下,@mdfName 就是DB的name
MOVE 'Relaship' TO @mdfPath,
MOVE 'Relaship_log' TO @ldfPath
END

使用SQL语句还原数据库 2012.3.20的更多相关文章

  1. SQL语句还原数据库并移动文件到指定路径

    用SQL语句还原数据库时如果不指定数据库文件的存储路径,则默认把数据文件和日志文件存放到与原数据库相同的文件路径中,这样可能会产生错误,比如执行下面的语句: restore database Smar ...

  2. 面试、笔试中常用的SQL语句(数据库知识必杀)一共50个!!!

    Student(S#,Sname,Sage,Ssex) 学生表  Course(C#,Cname,T#) 课程表  SC(S#,C#,score) 成绩表  Teacher(T#,Tname) 教师表 ...

  3. 2-06使用SQL语句创建数据库3

    向现有数据库中添加文件组和数据文件几种方式以及步骤: 第一种:在视图下添加文件组和数据文件. 添加文件组的步骤: 右击你想要添加文件组的数据库点属性,然后点文件组就可以添加. 添加数据文件的步骤: 下 ...

  4. 使用SQL语句清空数据库所有表的数据

    使用SQL语句清空数据库所有表的数据 近来发现数据库过大,空间不足,因此打算将数据库的数据进行全面的清理,但表非常多,一张一张的清空,实在麻烦,因此就想利用SQL语句一次清空所有数据.找到了三种方法进 ...

  5. SQL语句获取数据库中的表主键,自增列,所有列

    SQL语句获取数据库中的表主键,自增列,所有列   获取表主键 1:SELECT TABLE_NAME,COLUMN_NAME FROM INFORMATION_SCHEMA.KEY_COLUMN_U ...

  6. 【转载】C#常用数据库Sqlserver通过SQL语句查询数据库以及表的大小

    在Sqlserver数据库中,一般我们查看数据库的大小可以通过查找到数据库文件来查看,但如果要查找数据表Table的大小的话,则不可通过此方法,在Sqlserver数据库中,提供了相应的SQL语句来查 ...

  7. mysql / pgsql 使用sql语句查询数据库所有表注释已经表字段注释

    mysql使用sql语句查询数据库所有表注释已经表字段注释(转载)   场景: 1. 要查询数据库 "mammothcode" 下所有表名以及表注释 /* 查询数据库 ‘mammo ...

  8. SQL语句之数据库操作

    SQL语句系列 1.SQL语句之行操作 2.SQL语句之表操作 3.SQL语句之数据库操作 4.SQL语句之用户管理 占坑,带写……

  9. 3,SQL语句及数据库优化

       1,统一SQL语句的写法 对于以下两句SQL语句,程序员认为是相同的,数据库查询优化器认为是不同的. 所以封装成复用方法,用标准模板来控制. select*from dual select*Fr ...

随机推荐

  1. APP项目下载及运行

    1.首先下载Git 2.再下载安装node.js 3.dos窗口下载node.js依赖jar包 执行命令:npm install 4.从Git上down项目 5.运行项目 在项目根目录下 右键 打开 ...

  2. IIS-反向代理配置&&插件安装

    参考:https://www.cnblogs.com/pengcc/p/4329207.html 网络上好多开场的文章就说了好多的原理之类的这里我们直接开始配置.不过也要简单说下win下配置反向代理只 ...

  3. 【Struts 基础案例】

    LoginAction package k.action; import k.form.UserForm; import org.apache.struts.action.*; import java ...

  4. netty(一)---服务端源码阅读

    NIO Select 知识 select 示例代码 : //创建 channel 并设置为非阻塞 ServerSocketChannel serverChannel = ServerSocketCha ...

  5. VS中消除ANSI API警告

    最近在VS上写网络程序遇到许多问题,因为VS中将许多ANSI中的API都重写了,那些API大多有漏洞或不能支持现在的一些编程需求了,所以在VS中使用会因为警告而不能用. 但一些老API用着比较方便,了 ...

  6. 带有“全选”的combotree

    <div id="setBtn_dd" class="easyui-window" data-options="iconCls:'icon-sa ...

  7. UIView的API

    - (instancetype)initWithFrame:(CGRect)frame; 使用指定的框架矩形初始化并返回新分配的视图对象. - (instancetype)initWithCoder: ...

  8. jvm 内存,线程,gc分析

    1.查看 gc的次数,和各个垃圾回收区域的内存比例  jstat : jstat -gcutil pid interval(ms) 例子:jstat -gcutil 332 1000 参数说明如下: ...

  9. 【模板】凸包向内推进求不严格的半平面交——poj3384

    想不明白这题写严格的半平面交为什么会错 /* 凸包所有边向内推进r */ #include<iostream> #include<cstring> #include<cs ...

  10. 吴裕雄--天生自然Numpy库学习笔记:NumPy 位运算

    bitwise_and() 函数对数组中整数的二进制形式执行位与运算. import numpy as np print ('13 和 17 的二进制形式:') a,b = 13,17 print ( ...