用SQL SERVER与DELPHI写的,不知数据库备份与恢复怎写。高手们请帮忙啊,有源码最好给小妹看一下。在网上下了一些,没有一个是全的。先谢谢了!

解决方案 »

  1.   

    来源于:
    http://community.csdn.net/Expert/topic/4218/4218564.xml?temp=.7725641function pBackupDataBase(DataBaseName, BackupFileName : String) : Boolean;
    var
      TempTab : TADOQuery;
    begin
      if FileExists(BackupFileName) then DeleteFile(BackupFileName);  TempTab := TADOQuery.Create(nil);
      try
        TempTab.Connection := pvADOConn;    //pvADOConn为连接数据的字符串
        TempTab.SQL.Add('USE '+DataBaseName);
        TempTab.SQL.Add('BACKUP DATABASE '+DataBaseName+' TO DISK = '''+ BackupFileName+'''');
        TempTab.ExecSQL;
        TempTab.Free;
        Result := True;
      except
        TempTab.Free;
        Result := False;
      end;
    end;function pRestoreDataBase(DataBaseName, BackupFileName : String) : Boolean;
    var
      TempTab : TADOQuery;
    begin
      TempTab := TADOQuery.Create(nil);
      try
        TempTab.Connection := pvADOConn;
        TempTab.SQL.Add('USE master');
        TempTab.SQL.Add('RESTORE DATABASE '+DataBaseName+' FROM DISK = '''+BackupFileName+'''');
        TempTab.ExecSQL;
        TempTab.Free;
        Result := True;
      except
        TempTab.Free;
        Result := False;
      end;
    end;
      

  2.   

    backup database Mydatabasename to disk='C:.db' with init //备分Restore database Mydatabasename from disk='C:.db' WITH replace,stats //恢复
      

  3.   

    第一眼就看出  XXSingle(盘古【传说】) 兄弟的代码好像是我以前曾经写的!
    呵呵!
    在这就不重复了!
      

  4.   

    太难写了,不如启用SQL SERVER的自动备份功能。
      

  5.   

    在SQL的维护中建一个自动备份到一个共享的文件夹中定期去COPY到别的地方!