【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();
}
}
