程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> FireDAC 下的 Sqlite [2]

FireDAC 下的 Sqlite [2]

編輯:Delphi


為了方便測試, 我把官方提供的 C:\Users\Public\Documents\Embarcadero\Studio\14.0\Samples\data\FDDemo.sdb 復制了一份到 C:\Temp\FDDemo.sdb.



{新建一個 VCL Forms Application, 然後添加如下控件(建議按 Ctrl + . 後用鍵盤輸入添加):}

TFDPhysSQLiteDriverLink // 用於驅動自動連接; 不同數據庫各對應一個: TFDPhys****DriverLink
TFDGUIxWaitCursor       // 用於自動管理 GUI 程序的"等待光標"; 在 Console 和 FMX 下也都有類似對應的東西
TFDConnection           // 數據連接
TFDQuery                // 數據查詢
TDataSource             // 數據源
TDBGrid                 // 數據顯示

// uses FireDAC.Phys.SQLite 之後, 可不用添加 TFDPhysSQLiteDriverLink
// uses FireDAC.VCLUI.Wait  之後, 可不用添加 TFDGUIxWaitCursor


{簡單幾行代碼, 就呈現了 FDDemo.sdb 中的 Orders 表中的數據}
procedure TForm1.FormCreate(Sender: TObject);
begin
  FDConnection1.DriverName := 'SQLite';
  FDConnection1.Params.Add('Database=C:\Temp\FDDemo.sdb');

  FDQuery1.Connection := FDConnection1;
  DataSource1.DataSet := FDQuery1;
  DBGrid1.DataSource := DataSource1;

  FDQuery1.SQL.Text := 'SELECT * FROM Orders'; // SQLite 非常好地支持了 SQL92 標准, 目前被忽略的僅有: http://www.sqlite.org/omitted.html 

  FDConnection1.Open();
  FDQuery1.Open();

  DBGrid1.Align := alClient;
end;


效果圖:


{稍稍變通一下代碼}
procedure TForm1.FormCreate(Sender: TObject);
begin
//  FDConnection1.ConnectionString := 'DriverID=SQLite; Database=C:\Temp\FDDemo.sdb'; // 可代替下面兩行
  FDConnection1.Params.Add('DriverID=SQLite');            // 同 FDConnection1.DriverName := 'SQLite';
  FDConnection1.Params.Add('Database=C:\Temp\FDDemo.sdb');

  FDQuery1.Connection := FDConnection1;
  DataSource1.DataSet := FDQuery1;
  DBGrid1.DataSource := DataSource1;

  FDQuery1.SQL.Text := 'SELECT * FROM Orders';

  FDConnection1.Connected := True;
  FDQuery1.Active := True;

  DBGrid1.Align := alClient;
end;

{再變通一下}
procedure TForm1.FormCreate(Sender: TObject);
begin
  FDQuery1.Connection := FDConnection1;
  DataSource1.DataSet := FDQuery1;
  DBGrid1.DataSource := DataSource1;

  FDConnection1.Open('DriverID=SQLite;Database=C:\Temp\FDDemo.sdb');
  FDQuery1.Open('SELECT * FROM Orders');

  DBGrid1.Align := alClient;
end;


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved