SQLDMO(SQL Distributed Management Objects,SQL分布式管理对象)封装了Microsoft SQL Server数据库中的对象。SQLDMO是Microsoft SQL Server中企业管理器所使用的应用程序接口,所以它可以执行很多功能,其中当然也包括对数据库的备份和恢复。
SQLDMO由Microsoft SQL Server自带的SQLDMO.dll提供,由于SQLDMO.dll是一个COM对象,所以大家在用之前必须在.NET项目中添加对它的引用,如下图所示:
下面是用C#语言书写的用于Microsoft SQL Server数据库备份和恢复的类:
using System;
namespace DbService
{
/// <summary>
/// DbOper类,主要应用SQLDMO实现对Microsoft SQL Server数据库的备份和恢复
/// </summary>
public sealed class DbOper
{
/// <summary>
/// DbOper类的构造函数
/// </summary>
private DbOper()
{
}
/// <summary>
/// 数据库备份
/// </summary>
public static void DbBackup()
{
SQLDMO.Backup oBackup = new SQLDMO.BackupClass();
SQLDMO.SQLServer oSQLServer = new SQLDMO.SQLServerClass();
try
{
oSQLServer.LoginSecure = false;
oSQLServer.Connect("localhost", "sa", "1234");
oBackup.Action = SQLDMO.SQLDMO_BACKUP_TYPE.SQLDMOBackup_Database;
oBackup.Database = "Northwind";
oBackup.Files = @"d:/Northwind.bak";
oBackup.BackupSetName = "Northwind";
oBackup.BackupSetDescription = "数据库备份";
oBackup.Initialize = true;
oBackup.SQLBackup(oSQLServer);
}
catch
{
throw;
}
finally
{
oSQLServer.DisConnect();
}
}
/// <summary>
/// 数据库恢复
/// </summary>
public static void DbRestore()
{
SQLDMO.Restore oRestore = new SQLDMO.RestoreClass();
SQLDMO.SQLServer oSQLServer = new SQLDMO.SQLServerClass();
try
{
oSQLServer.LoginSecure = false;
oSQLServer.Connect("localhost", "sa", "1234");
oRestore.Action = SQLDMO.SQLDMO_RESTORE_TYPE.SQLDMORestore_Database;
oRestore.Database = "Northwind";
oRestore.Files = @"d:/Northwind.bak";
oRestore.FileNumber = 1;
oRestore.ReplaceDatabase = true;
oRestore.SQLRestore(oSQLServer);
}
catch
{
throw;
}
finally
{
oSQLServer.DisConnect();
}
}
}
}
这段代码虽然很短,但是却很实用,希望能够对大家有所帮助:)
分享到:
相关推荐
SQLDMO方法对SQL_Server数据库备份和恢复
用 sqldmo方式备份或恢复sqlserver2000数据库;
利用SQLDMO备份和还原数据库的资源包(完整的SQLDMO.DLL文件)和SQL数据库备份与还原的源码
unit Unit3; ...Dialogs,SQLDMO_TLB, StdCtrls, ComCtrls,comobj; type TForm3 = class(TForm) Button1: TButton; ProgressBar1: TProgressBar; procedure Button1Click(Sender: TObject);
功能特点: 1,比较两个数据库的结构或数据差异并生成SQL脚本,一键同步 2,生成整个数据库的建库SQL脚本代码 3,在目标数据执行SQL代码 4,SQLSERVER转ACCESS,自动建表同步...2,本机安装SqlServer2005或支持SQLDMO
sql server sqldmo_x86_x64,C#数据库备份还原很好用的.dll,里面有使用方法,引用Interop.SQLDMO.dll后的注意事项。 SQLDMO.dll是个好东西,ASP.NET利用它可以实现在线备份、还原数据库等各种功能。近日有客户...
#region SQL数据库备份 /// /// SQL数据库备份 /// /// <param name="ServerIP">SQL服务器IP或(Localhost) /// 数据库登录名 /// 数据库登录密码 /// 数据库名 /// 备份到的路径 public static void ...
SQL SERVER数据备份与恢复组件1.0是基于SQLDMO开发的免费组件包,能够轻易的备份和恢复数据库,支持显示进度,运行该组件需要SQLDMO库支持.
SQL SERVER数据备份与恢复组件1.0是基于SQLDMO开发的免费组件包,能够轻易的备份和恢复数据库,支持显示进度,运行该组件需要SQLDMO库支持.开发者:光辉软件开发工作室主页:http://zygtp.my20.comEmail:zygtp@126.com
c# 获取当前可见的sqlserver 服务以及数据库
基于Sqldmo的SQL数据备份恢复程序,包括c#源代码和Sqldmo组件库.
SQL SERVER备份恢复:包括SQL执行和SQLDMO执行
SQLDMO(SQL Distributed Management Objects,SQL分布式管理对象)封装 Microsoft SQL Server 2000 数据库中的对象。SQL-DMO 允许用支持自动化或 COM 的语言编写应用程序,以管理 SQL Server 安装的所有部分。SQL-...
一个WEB下管理SQl Server 2000数据库的工具,是MS在2003年提供的一个开源工具,用Net 1.0 开发的,原始版本已找不到这,这个是当时汉化后并加了一些功能和版本. 将代码改成NET 3.5 的,试了一下对SQL Server 2005 ,SQL ...
c# 备份还原数据库 sql2008 包括说明和sqldmo.dll
资源介绍:。创建SQLDMO.SQLServer对象,应用对象的属性方法取SQL数据库的服务器列表、数据库列表、数据库的所有表。资源作者:。资源界面:。资源下载:。
由于SQL数据库的企业管理器对于一般操作员来说有点...在没有安装SQLSERVER服务器的电脑中,先执行reg.bat,注册一下SQLDMO.DLL,就可以了。 用到的控件有Ehlib、Raize、DevExpress,TMS, 网上都有下载 ywo 2009-11-30