我做了一个c#程序,里面需要实现数据备份,就是一点击一个按钮然后就进行数据备份,敬请各位大侠指点,谢谢了

解决方案 »

  1.   

    /// 
        /// 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");//服务器名、账号、密码
                    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();
                }
            }
        }
      

  2.   

    也就是在数据库执行的SQL语句放在 代码后台执行   
    跟执行ADO.Net一样