打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
[整理] C#调用SQLDMO.DLL时间数据库备份 / 还原。

整理] C#调用SQLDMO.DLL时间数据库备份 / 还原。

 1 /// <summary>
2 /// 通过调用MSSQL的SQLDMO.DLL文件来实现备份数据库
3 /// 1.首先在在项目中引用SQLDMO.DLL文件。
4 /// 2.在引用中的SQLDMO.DLL文件右击-->属性-->设置[嵌入互操作类型]为flash
5 /// </summary>
6 public static void DBBackup()
7 {
8 SQLDMO.Backup dbBackup = new SQLDMO.BackupClass();
9 SQLDMO.SQLServer sqlServer = new SQLDMO.SQLServerClass();
10 try
11 {
12 sqlServer.LoginSecure = false;
13 sqlServer.Connect("localhost", "sa", "");
14 dbBackup.Action = SQLDMO.SQLDMO_BACKUP_TYPE.SQLDMOBackup_Database;
15 dbBackup.Database = "kuang"; //数据库名字
16 dbBackup.Files = @"d:\kuang_bak.bak"; //备份位置
17 dbBackup.BackupSetName = "kuang"; //名称,在企业管理器里面选择备份的时候也有这个,貌似没用。
18 dbBackup.BackupSetDescription = "数据库备份"; //描述,在企业管理器里面选择备份的时候也有这个,貌似没用。
19 dbBackup.Initialize = true;
20 dbBackup.SQLBackup(sqlServer);
21 }
22 catch
23 {
24 throw;
25 }
26 finally
27 {
28 sqlServer.DisConnect();
29 }
30 }

 

 1 /// <summary>
2 /// 通过调用MSSQL的SQLDMO.DLL文件来实现从备份文件恢复到是数据库
3 /// 注:恢复是数据库必须是没有链接的。清楚链接的方法:在企业管理器右击数据库-->分离数据库-->点击清楚按钮即可
4 /// </summary>
5 private void DBReply()
6 {
7 SQLDMO.Restore restore = new SQLDMO.RestoreClass();
8 SQLDMO.SQLServer sqlserver = new SQLDMO.SQLServerClass();
9 sqlserver.LoginSecure = false;
10 sqlserver.Connect("localhost", "sa", "");
11 restore.Action = SQLDMO.SQLDMO_RESTORE_TYPE.SQLDMORestore_Database;
12 restore.Database = "kuang";
13 restore.Files = @"d:\kuang_bak.bak";
14 restore.FileNumber = 1;
15 restore.SQLRestore(sqlserver);
16 }


在回复的过程中,需要保证数据库没有正在使用,网上看到的代码经测试没有效果,如果有朋友知道方法的恳请您回复一下,谢谢。

代码是网络上看到的,测试整理了一下,感谢原作者。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
SQLDMO类的使用
利用SQLDMO备份与还原数据库
应用程序获取SQL Server实例名名称
在SQLServer2000中恢复Master数据库
ASP.NET备份/恢复数据库(转)
SQLSERVER2008数据库增量备份还原方式
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服