欢迎光临
我们一直在努力

C++ Builder中,sql server在客户端调用存储过程向服务器端备份数据库-数据库专栏,SQL Server

建站超值云服务器,限时71元/月

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;
   }

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » C++ Builder中,sql server在客户端调用存储过程向服务器端备份数据库-数据库专栏,SQL Server
分享到: 更多 (0)