您当前位置: 首页 >  WEB技术 >  SQL server2000数据库备份和还原语句
2013/11/8 12:07:06 分类:WEB技术

SQL server2000数据库备份和还原语句

      注意: 还原数据库时,不能使用要被还原的数据库(andyny) ,如使用企业管理器正在使用被还原的数据库,不能有对被还原的数据库(andyny)有任何操作,如程序运行sql语句正在操作被还原的数据库.

 否则报错:
conn.execute("restore   database   docdata   from   disk=f:\\database.bak")  
  对不起,还原备份系统数据失败![microsoft][odbc   sql   server   driver][sql   server]因为数据库正在使用,所以未能获得对数据库的排它访问权。
 
 

备份数据库,例如:

BACKUP DATABASE Northwind
   TO DISK = \'c:\\Northwind.bak\'

还原数据库,例如:

--返回由备份集内包含的数据库和日志文件列表组成的结果集
RESTORE FILELISTONLY
   FROM DISK = \'c:\\Northwind.bak\'

--还原由BACKUP备份的数据库
RESTORE DATABASE Northwind
   FROM DISK = \'c:\\Northwind.bak\'

--指定还原后的数据库物理文件名称及路径
RESTORE DATABASE TestDB
   FROM DISK = \'c:\\Northwind.bak\'
   WITH
   MOVE \'Northwind\' TO \'c:\\test\\testdb.mdf\',
   MOVE \'Northwind_log\' TO \'c:\\test\\testdb.ldf\'

   MOVE \'logical_file_name\' TO \'operating_system_file_name\'
指定应将给定的 logical_file_name 移到 operating_system_file_name。
默认情况下,logical_file_name 将还原到其原始位置。如果使用 RESTORE
语句将数据库复制到相同或不同的服务器上,则可能需要使用 MOVE 选项重
新定位数据库文件以避免与现有文件冲突。可以在不同的 MOVE 语句中指定
数据库内的每个逻辑文件。

--强制还原,加上REPLACE参数,则在现有数据库基础上强制还原。
RESTORE DATABASE TestDB
   FROM DISK = \'c:\\Northwind.bak\'
   WITH REPLACE,
   MOVE \'Northwind\' TO \'c:\\test\\testdb.mdf\',
   MOVE \'Northwind_log\' TO \'c:\\test\\testdb.ldf\' 

 

 

/////////////// 示例代码摘录///////////////


   CNN cn = new CNN();
   String sqlStr = "select * from db where stu_id=1";

   //String s="BACKUP DATABASE DB TO DISK = \'c:/DB.bak\'";

   // 注意语法,\'字符串\'......
   // String s="BACKUP DATABASE andyny TO DISK =\'c:/andyny.bak\'";
   String ss="RESTORE Database andyny from disk=\'c:/andyny.bak\'";

   // andyny 是被还原,备份的数据库名....
   boolean b=cn.backAndRestoreUpDB(ss);

本文由胡金金个人网站整理发布,转载请注明地址:http://www.hujinjin.com/info/329.html

凡标明来源于胡金金个人网站的文章,皆为本站整理发布,若转载此文必须附原文链接,对部分平台更改其文内容当自己原创者,胡金金个人网站将保留其追究权利!
个人资讯推荐
友情链接