欲在程序实现sql2000数据库中的数据备份到客户端,不知该如何做?

解决方案 »

  1.   

    //備份確認
    procedure TdfrmData_Bak.OKBtnClick(Sender: TObject);
    var
       QryTmp:Tquery;
    begin
         qrytmp:=Tquery.create(self);
         qryTmp.databasename:=BasDM.CostDB.databasename;
         QryTmp.sql.Add('Backup database CMS to disk='+''''+Edit1.Text +'''');     
             //Edit1.Text為備份路徑與備份文件名,CMS為數據庫名
         QryTmp.execsql;
    end;procedure TdfrmData_Bak.SpeedButton1Click(Sender: TObject);
    begin
      if OpenDialog1.Execute then
      begin
        Edit1.text := (OpenDialog1.filename);
      end;end;
      

  2.   

    用触发器作吧!不过是备份地服务器端,备份成功后通过程序拷贝到客户端来就会吧!
    //备份
    CREATE PROCEDURE dbbackup_pro @afdname varchar(150) as 
    BACKUP DATABASE JiaLeDB to disk=@afdname//恢复
    CREATE PROCEDURE dbrestore_pro as restore DATABASE JiaLeDB from disk=@afdname WITH RECOVERY@afname 为传入的备份文件名!
      

  3.   

    备份一般都用backup啊
    应该是最简单的办法吧
      

  4.   

    study ,but i think use backup .
      

  5.   

    1、在客户端建一个完全共享的目录,例如 \\YourComputerName\DbBackup,其中DbBackup为共享名。
    2、在客户端用TQuery执行做如下操作,试试看。
    Query.Close;
    Query.Sql.Clear;
    Query.Sql.Add('USE MASTER BACKUP DATABASE YourDatabaseName TO DISK='''+'\\YourComputerName\DbBackup\YourBackupName'+'''');
    Query.Execsql;
    自已调调这段程序。
      

  6.   

    用sql语言备份到服务器端,然后downloadfile到客户端因为sql2000在客户端做的备份是相对于sql服务器的