C++ MFC编程,ODBC连接SQL后,怎么让SQL数据库备份与恢复?
展开全部
void CMainFrame::OnBackup()
{
// TODO: Add your command handler code here
CDatabase db;
CString filename;
//构造保存文件对话框
CFileDialog filedlg(false,"",NULL,
OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,"*.*");
if (filedlg.DoModal()==IDOK) //弹出对话框
{
filename=filedlg.GetPathName(); //获取保存文件的路径
if (filename!="")
{
CString strSQL;
strSQL.Format("ODBC;UID="";PWD=""; "); //默认用户名和密码
db.Open("mystudent",false,false,strSQL);
strSQL.Format("backup database student to Disk='%s'",filename); //备份数据库
db.ExecuteSQL(strSQL);
AfxMessageBox("数据库备份成功!\r\n 文件路径为:"+filename);
}
}
else return;
}
void CMainFrame::OnRecover()
{
// TODO: Add your command handler code here
CDatabase db;
CString filename;
//构造打开文件对话框
CFileDialog filedlg(TRUE,NULL,NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,"所有文件(*.*)||",NULL);
if (filedlg.DoModal()==IDOK)
{
filename=filedlg.GetPathName(); //获取打开文件的路径
if (filename!="")
{
CString strSQL;
strSQL.Format("ODBC;UID="";PWD=""; ");
db.Open("mystudent",false,false,strSQL);
strSQL.Format("restore database report from disk='%s'",filename); //还原数据库
db.ExecuteSQL(strSQL);
AfxMessageBox("数据库还原成功");
}
}
else return;
{
// TODO: Add your command handler code here
CDatabase db;
CString filename;
//构造保存文件对话框
CFileDialog filedlg(false,"",NULL,
OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,"*.*");
if (filedlg.DoModal()==IDOK) //弹出对话框
{
filename=filedlg.GetPathName(); //获取保存文件的路径
if (filename!="")
{
CString strSQL;
strSQL.Format("ODBC;UID="";PWD=""; "); //默认用户名和密码
db.Open("mystudent",false,false,strSQL);
strSQL.Format("backup database student to Disk='%s'",filename); //备份数据库
db.ExecuteSQL(strSQL);
AfxMessageBox("数据库备份成功!\r\n 文件路径为:"+filename);
}
}
else return;
}
void CMainFrame::OnRecover()
{
// TODO: Add your command handler code here
CDatabase db;
CString filename;
//构造打开文件对话框
CFileDialog filedlg(TRUE,NULL,NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,"所有文件(*.*)||",NULL);
if (filedlg.DoModal()==IDOK)
{
filename=filedlg.GetPathName(); //获取打开文件的路径
if (filename!="")
{
CString strSQL;
strSQL.Format("ODBC;UID="";PWD=""; ");
db.Open("mystudent",false,false,strSQL);
strSQL.Format("restore database report from disk='%s'",filename); //还原数据库
db.ExecuteSQL(strSQL);
AfxMessageBox("数据库还原成功");
}
}
else return;
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询