我现在想备份ACCESS数据库,在delphi中怎么实现?
不然的话,用copyfile可以吗?怎么用?

解决方案 »

  1.   

    CopyFile(MyDataPath + AccessFileName, MyBackupPath + AccessFileName, False);
      

  2.   

    就用COPYFILE可以了(看帮助)
      

  3.   

    procedure Tproject.BitBtn1Click(Sender: TObject);
    var
      CreateAccess:OleVariant;
      DataBaseName:ansiString;
      ConnectStr:ansistring;
      TdeForm:TTdeForm;
    begin
      SaveDialog1.InitialDir := ExtractFilePath(Application.ExeName) + '新建项目';
      SaveDialog1.Title:='保存项目文件';
      SaveDialog1.FileName:=ProjectNamesx;
      if not SaveDialog1.Execute then
      begin
        close;
        exit;
      end else
      begin
        DataBaseName:=SaveDialog1.FileName;
        if Not CopyFileTo(ExtractFilePath(Application.ExeName) + '\rationbase\ration.mdb', ChangeFileExt(DataBaseName,'') + 'Ration.mdb') then
        begin
          Application.MessageBox('对不起,创建数据库错误,请您重新进行操作','',MB_OK + MB_ICONINFORMATION);
          Exit;
        end;
        SetFileAttributes(Pchar(ChangeFileExt(DataBaseName,'') + 'Ration.mdb'),FILE_ATTRIBUTE_HIDDEN);
        SetFileAttributes(Pchar(ExtractFilePath(Application.ExeName) + '\rationbase\ration.mdb'),0);
       //FileSetAttr()
        //FileGetAttr()
        //SetFileAttrigutes();
       // SetFileAttrigutes(ExtractFilePath(Application.ExeName) + '\rationbase\ration.mdb',);
        ConnectStr:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+DataBaseName + ';';
        CreateAccess:=CreateOleObject('ADOX.Catalog');
        CreateAccess.Create(ConnectStr);
           ........      ///省略
    end;
    --------------------------
    www.nxit.net/bbs 愿和您一起交流;期待斑竹的出现
      

  4.   

    如果你要动态的,你可以动态改变下列参数即可,再用时间控件控制它的执行时间
    CopyFile(原路径\文件名, 目标路径\文件名, False);