C#中数据库备份还原 精简

使用前要导入SQLDMO.dll(在com组件中导入Microsoft SQLDMO Object Library即可)

  /// 
    /// DbOper类,主要应用SQLDMO实现对Microsoft SQL Server数据库的备份和恢复
    /// 
    public sealed class DbOper
    {
        /// 
        /// DbOper类的构造函数
        /// 
        public DbOper()
        {
        }
        /// 
        /// 数据库备份
        /// 
        public static void DbBackup()
        {
            SQLDMO.Backup oBackup = new SQLDMO.BackupClass();
            SQLDMO.SQLServer oSQLServer = new SQLDMO.SQLServerClass();
            try
            {
                oSQLServer.LoginSecure = false;
                oSQLServer.Connect(".","sa","sasa");//服务器名、账号、密码  服务器名:ADMIN-PC\MGX2005、192.168.0.111\sql2005 有时候需要加SQL2005实例
                oBackup.Action = SQLDMO.SQLDMO_BACKUP_TYPE.SQLDMOBackup_Database;
                oBackup.Database = "tian";
                oBackup.Files = @"d:\tian.bak";
                oBackup.BackupSetName = "tian";
                oBackup.BackupSetDescription = "数据库备份";
                oBackup.Initialize = true;
                oBackup.SQLBackup(oSQLServer);
            }
            catch
            {
                throw;
            }
            finally
            {
                oSQLServer.DisConnect();
            }
        }
        /// 
        /// 数据库恢复
        /// 
        public static void DbRestore()
        {
            SQLDMO.Restore oRestore = new SQLDMO.RestoreClass();
            SQLDMO.SQLServer oSQLServer = new SQLDMO.SQLServerClass();
            try
            {
                oSQLServer.LoginSecure = false;
                oSQLServer.Connect(".", "sa", "sasa");
                oRestore.Action = SQLDMO.SQLDMO_RESTORE_TYPE.SQLDMORestore_Database;
                oRestore.Database = "tian";
                oRestore.Files = @"d:tian.bak";
                oRestore.FileNumber = 1;
                oRestore.ReplaceDatabase = true;
                oRestore.SQLRestore(oSQLServer);
            }
            catch
            {
                throw;
            }
            finally
            {
                oSQLServer.DisConnect();
            }
        }
    }

 
 
分类: C#
posted @ 2013-09-25 23:03  meimao5211  阅读(325)  评论(0编辑  收藏  举报