zoukankan      html  css  js  c++  java
  • FireDAC 下的 Sqlite [7]


    用 TFDSQLiteBackup 控件, 两三行代码即可完成 Sqlite 数据库的备份.
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      {先初始化目标}
      FDConnection1.DriverName := 'SQLite';
      FDConnection1.Params.Add('Database=C:TempFDDemo_Back.sdb'); //如果不指定这个路径, 就是备份到内存
      FDConnection1.Open();
    
      {备份 C:TempFDDemo.sdb}
      FDSQLiteBackup1.DriverLink := FDPhysSQLiteDriverLink1;
      FDSQLiteBackup1.Database := 'C:TempFDDemo.sdb';        //支持 Url
      FDSQLiteBackup1.DestDatabaseObj := FDConnection1.CliObj;
      FDSQLiteBackup1.Backup;
    end;
    


    经过一些操作后, 数据库可能会有碎片, 这时可通过 TFDSQLiteValidate 控件的 Sweep 方法执行优化.
    {常见代码}
    begin
      FDSQLiteValidate1.DriverLink := FDPhysSQLiteDriverLink1;
      FDSQLiteValidate1.Database := 'C:TempFDDemo.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;
    


  • 相关阅读:
    学习java的第二天
    第一天学习JAVA
    java小知识字符串,比较object,equalsIgnoreCase()拼接concat /截取substring
    java小知识api Scanner Random ArrayList
    java小知识对象
    java小知识数组
    java小知识方法
    java基础知识循环语句
    java小知识语句
    java基础小知识
  • 原文地址:https://www.cnblogs.com/del/p/3745714.html
Copyright © 2011-2022 走看看