FireDAC 下的 Sqlite [2] - 第一个例子
发布时间:2020-12-12 19:43:17 所属栏目:百科 来源:网络整理
导读:为了方便测试,我把官方提供的 C:UsersPublicDocumentsEmbarcaderoStudio14.0SamplesdataFDDemo.sdb 复制了一份到 C:TempFDDemo.sdb . {新建一个 VCL Forms Application,然后添加如下控件(建议按 Ctrl + . 后用键盘输入添加):} TFDPhysSQLiteDrive
为了方便测试,我把官方提供的 C:UsersPublicDocumentsEmbarcaderoStudio14.0SamplesdataFDDemo.sdb 复制了一份到
C:TempFDDemo.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:TempFDDemo.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:TempFDDemo.sdb'; // 可代替下面两行 FDConnection1.Params.Add('DriverID=SQLite'); // 同 FDConnection1.DriverName := 'SQLite'; FDConnection1.Params.Add('Database=C:TempFDDemo.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:TempFDDemo.sdb'); FDQuery1.Open('SELECT * FROM Orders'); DBGrid1.Align := alClient; end; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |