肚子饿得没力气干活了,就在系统里面到处转,看看那些系统和应用程序的DLL动态链接库,偶然看到了这么一个文件:SQLDMO.DLL 。还不知道这个文件是干嘛用的,到网上一查,哎呀,这是一个不大不小的发现!SQLDMO是SQL分布式管理对象,它封装了Microsoft SQL Server数据库中的对象,是企业管理器所使用的应用程序接口,所以它可以执行很多功能,其中当然也包括对数据库的备份和恢复。下面说一下这个文件如何使用,由于SQLDMO.DLL是一个COM对象,所以在用之前必须在.NET项目中添加对它的引用。也就是说要放到你的项目中的bin文件夹,然后在代码中加上:using SQLDMO;你用拥有它的接口了。比如在备份按钮Button_Click()事件中写:protected void Button1_Click(object sender, EventArgs e){ 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(); }}在还原数据库的按钮的Button2_Click()的事件中这样写:protected void Button2_Click(object sender, EventArgs e){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.DLL中的其他接口大家一起研究吧!