频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

C++Builder中,sqlserver在客户端调用存储过程向服务器端备份数据库

来源:互联网 作者: 出处:巧巧读书 2006-04-09 进入讨论组

1.Create a backup database stored procedure in master database.

CREATE PROCEDURE backupdb
  @database varchar(10),
  @directory varchar(100)
AS
  backup database @database
  to disk=@directory

2.Get path of SQL Server.

AnsiString __fastcall TFrmDM::GetSqlServerPath(){
  AnsiString result,tmp;
  TADOQuery *Query=new TADOQuery(this);
  Query->Connection=ADOConnection_Master;
  Query->Close();
  Query->SQL->Clear();
  Query->SQL->Add("select filename from sysdatabases where name='master'");
  Query->Open();
  tmp=Query->FieldByName("filename")->AsString;
  result=tmp.SubString(1,tmp.Length()-15);
  Query->Free();
  return result;
}

3.Call the backup database stored procedure.

  d=FormatDateTime("yyyy-mm-dd hh-mm-ss",FrmDM->GetServerTime());
  try{
     path=FrmDM->GetSqlServerPath()+"backup\\";
     FrmDM->ADOStoredProc1->Close();
     FrmDM->ADOStoredProc1->Connection=FrmDM->ADOConnection_Master;
     FrmDM->ADOStoredProc1->Prepared=true;
     FrmDM->ADOStoredProc1->ProcedureName="backupdb;1";
     FrmDM->ADOStoredProc1->Parameters->ParamByName("@database")->Value = "db_name_to_backup";
     FrmDM->ADOStoredProc1->Parameters->ParamByName("@directory")->Value =path+"db_name_to_backup"+d;
     FrmDM->ADOStoredProc1->ExecProc();
     Application->MessageBox("备份完成","提示",MB_OK+MB_ICONINFORMATION);
     this->Close();
   }
   catch(...){
     Application->MessageBox("备份出错,请重新再来","警告",MB_OK+MB_ICONWARNING);
     return;
   }

观看地址: http://www.qqread.com/sqlserver/p152993005.html 更多文章 更多内容请看FTP服务器双核服务器技术网站服务器的选型专题,或进入讨论组讨论。
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
讨论组问题推荐
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章