FireDAC 의 Sqlite [7] - 백업, 최적화, 사무 (Transaction)

1395 단어 transaction
TFDSQLite Backup 컨트롤 로 두 세 줄 코드 를 사용 하면 Sqlite 데이터베이스 백업 을 완성 할 수 있 습 니 다.

procedure TForm1.Button1Click(Sender: TObject);
begin
  {      }
  FDConnection1.DriverName := 'SQLite';
  FDConnection1.Params.Add('Database=C:\Temp\FDDemo_Back.sdb'); //         ,        
  FDConnection1.Open();

  {   C:\Temp\FDDemo.sdb}
  FDSQLiteBackup1.DriverLink := FDPhysSQLiteDriverLink1;
  FDSQLiteBackup1.Database := 'C:\Temp\FDDemo.sdb';        //   Url
  FDSQLiteBackup1.DestDatabaseObj := FDConnection1.CliObj;
  FDSQLiteBackup1.Backup;
end;
일부 조작 을 거 친 후에 데이터 베 이 스 는 조각 이 있 을 수 있 습 니 다. 이 때 TFDSQLiteValidate 컨트롤 의 Sweet 방법 으로 최적화 할 수 있 습 니 다.

{    }
begin
  FDSQLiteValidate1.DriverLink := FDPhysSQLiteDriverLink1;
  FDSQLiteValidate1.Database := 'C:\Temp\FDDemo.sdb';
  FDSQLiteValidate1.Sweep; //          auto_vacuum = FULL; (0:NONE, 1:FULL, 2: INCREMENTAL)        
end;
데이터베이스 작업 중 실 수 를 피하 기 위해 트 랜 잭 션 (Transaction) 을 통 해 스크롤 백 할 수 있 습 니 다.그것 은 보편적으로 사용 되 는 수단 일 것 이다.

{    }
begin
  FDConnection1.StartTransaction; //      
  try
    {        }
    FDConnection1.Commit;   //  
  except
    FDConnection1.Rollback; //  
  end;
end;

좋은 웹페이지 즐겨찾기