3.8.5 数据库备份模块

2013-10-07 14:28:48 · 作者: · 浏览: 73

3.8.5  数据库备份模块

数据库备份模块的功能是对系统数据库完成备份。在企业级的应用系统中,数据库的数据十分重要,为了防止系统崩溃,数据库的份模块必不可少。具体实现流程如下。

(1) 创建一个对话框资源IDD_BACKUP_DLG,添加的控件如图3-16所示。

 
图3-16  备份数据库设计界面
(2) 双击对话框,创建一个新类CBackupDlg,对应代码如下:
  1. class CBackupDlg : public CDialog{  
  2. public:  
  3.     CBackupDlg(CWnd* pParent = NULL);  

(3) 给"备份"按钮添加消息响应函数,该函数的功能是实现对指定数据库的数据备份。具体实现代码如下:

  1. void CBackupDlg::OnBackup() {  
  2.     UpdateData();                               //数据的更新  
  3.     if(m_strPath == "")                         //条件的判断  
  4.     {  
  5.         MessageBox("请选择路径!");               //提示信息  
  6.         return ;              
  7.     }  
  8.     _ConnectionPtr pConnection;  
  9.     try  
  10.     {  
  11.         HRESULT hr = pConnection.CreateInstance("ADODB.
    Connection");//创建Connection对象  
  12.         pConnection->Open("driver={SQL Server};Server=.
    ;
    DATABASE=master;UID=sa;PWD=","","",adModeUnknown);  
  13.         //连接数据库  
  14.         CString sql;                        //定义字符串变量  
  15.         sql.Format("Backup Database HMSys to Disk 
    '%s' ", m_strPath);  
  16.         pConnection->Execute((_bstr_t)sql, NULL, 
    adCmdText);//执行SQL语句  
  17.         MessageBox("备份成功!");  
  18.         pConnection->Close();               //关闭连接  
  19.     }  
  20.     CATCH_ERROR;      
  21. }  
  22.