技术开发 频道

C#中运用SQLDMO备份和恢复SQL Server

【IT168 技术文档】

    SQLDMO(SQL Distributed Management Objects,SQL分布式管理对象)封装了Microsoft SQL Server数据库中的对象。SQLDMO是Microsoft SQL Server中企业管理器所使用的应用程序接口,所以它可以执行很多功能,其中当然也包括对数据库的备份和恢复。

    SQLDMO由Microsoft SQL Server自带的SQLDMO.dll提供,由于SQLDMO.dll是一个COM对象,所以大家在用之前必须在.NET项目中添加对它的引用。

    备份SQL SERVER数据库:

public static void DBBack() { SQLDMO.Backup backup = new SQLDMO.BackupClass(); SQLDMO.SQLServer server = new SQLDMO.SQLServerClass(); try { server.LoginSecure = false; server.Connect("localhost","sa","sa"); backup.Action = SQLDMO.SQLDMO_BACKUP_TYPE.SQLDMOBackup_Database; backup.Database = "northwind"; backup.Files = @"d:\Back\northwind.bak"; backup.BackupSetName = "northwind"; backup.BackupSetDescription = "Northwind数据库备份"; backup.Initialize = true; backup.SQLBackup(server); } catch(Exception x) { throw x; } finally { server.DisConnect(); } }

    恢复SQL SERVER数据库:

public static void DBRestore() { SQLDMO.Restore restore = new SQLDMO.RestoreClass(); SQLDMO.SQLServer server = new SQLDMO.SQLServerClass(); try { server.LoginSecure = false; server.Connect("localhost","sa","sa"); restore.Action = SQLDMO.SQLDMO_RESTORE_TYPE.SQLDMORestore_Database; restore.Database = "northwind"; restore.Files = @"D:\Back\Northwind.bak"; restore.FileNumber = 1; restore.ReplaceDatabase = true; restore.SQLRestore(server); } catch(Exception x) { throw x; } finally { server.DisConnect(); } }


0
相关文章