FireDAC中的SQLite(二)

我们接下来将要使用FDDemo.sdb数据库进行访问,开始我们的第一个SQLite访问例子。

我们的FDDemo.sdb存放目录在:C:\Program Files (x86)\Embarcadero\Studio\14.0\Samples\Data

新建VCL Forms Application

在XE6 IDE中按 Ctrl + . 键,快速输入 VCL Forms Application,回车后新建了一个VCL Forms Application应用程序。

添加FireDAC相关组件

继续按Ctrl + . 键,快速输入下面的字符,创建如下组件:

FDPhysSQLiteDriverLink    //SQLite驱动自动连接组件,等同于 uses FireDAC.Phys.SQLite;
FDGUIxWaitCursor          //用于自动管理GUI程序的等待光标,等同于 uses FireDAC.VCLUI.Wait;
FDConnection              //数据连接
FDQuery                   //数据查询
DataSource                //数据源
DBGrid                    //数据表格显示

添加后,IDE中如下图效果:

 

接下来我们输入简单的代码,如下:

procedure TForm1.FormCreate(Sender: TObject);
var
  DBStr: string;
begin
  //设置FDDemo.sdb的路径
  DBStr := ‘C:\Program Files (x86)\Embarcadero\Studio\14.0\Samples\Data\FDDemo.sdb‘;
  FDConnection1.DriverName := ‘SQLite‘;
  FDConnection1.Params.Add(‘Database=‘ + DBStr);

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

  FDQuery1.SQL.Text := ‘SELECT * FROM Products‘;
  FDQuery1.Open();
  FDConnection1.Open();

  DBGrid1.Align := alClient;
end;

 

OK,至此,我们已经完成了一个SQLite的小例子了,按F9开始运行吧,运行效果如下:

 

通过看万一老师的代码,发现FDConnection可以使用ConnectionString设置连接内容。

  //FDConnection1.DriverName := ‘SQLite‘;
  //FDConnection1.Params.Add(‘Database=‘ + DBStr); 等同于下面一行代码

  FDConnection1.ConnectionString := ‘DriverID=SQLite; Database=‘ + DBStr;

当然FDConnection.Open方法和FDQuery.Open方法支持如下使用:

  FDConnection1.Open(‘DriverID=SQLite; Database=‘ + DBStr);
  FDQuery1.Open(‘SELECT * FROM Products‘);

Open方法中直接赋予ConnectionString和SQL语句。

时间: 2024-10-09 20:21:23

FireDAC中的SQLite(二)的相关文章

FireDAC中的SQLite(一)

Windows client software,FireDAC supports two SQLite library linking modes: Static linking: the x86 sqlite3_x86.obj or x64 sqlite3_x64.obj client library is statically linked into application. FireDAC provides sqlite3_Xxx.obj v 3.7.15. That is default

Android中使用Sqlite数据库 (二) 增删改查

定义接口 package com.example.android_db.service; import java.util.List; import java.util.Map; public interface PersonService { public boolean addPerson(Object[] params); public boolean deletePerson(Object[] params); public boolean updatePerson(Object[] p

FireDAC 下的 Sqlite [10] - 使用 R-Tree 搜索.

R-Tree 主要用于三维空间的搜索, 据说这种搜索算法非常之快, 哪怕百万条记录也是眨眼间的事! SQLite 支持 1-5 维, FireDAC 也提供了 TFDSQLiteRTree 控件以方便定义回调函数. 为了简单, 我用二维表进行了成功的测试. 建立 R-Tree 表(索引)时需要使用特定语法, 譬如: FDConnection1.ExecSQL('CREATE VIRTUAL TABLE MyRTreeTable USING rtree(Id, minX, maxX, minY,

cocos2d-x中使用sqlite

在单机游戏中有几十个场景道具,每一个都有各自的状态(获得.未获得.获得个数)等等,如果在游戏中平凡涉及到这些道具的实时存储,那么使用文本就会稍慢.可以使用sqlite数据库来完成. 下载地址:http://www.sqlite.org/download.html 下载后,在项目中导入sqlite3.c和sqlite3.h两个文件即可. 附上使用代码:(如果表不存在,创建两个表.存储两种道具,再获取两个表中的数据) #include "sqlite/sqlite3.h" m_pDb =

sqlite学习笔记7:C/C++中使用sqlite之打开数据库

数据库的基本内容前面都已经说得差不多了,接下看看怎样在C语言中使用sqlite. 一 接口 sqlite3_open(const char *filename, sqlite3 **ppDb) 打开数据库,如果数据库不存在则新建一个数据库,并打开 sqlite3_close(sqlite3*) 关闭数据库,如果关闭之前还存在没有执行完的语句,将会返回SQLITE_BUSY 二 实例 1 目录结构 Projects{ main.c// 代码所在文件 sqlite{// 官网下载下来的sqlite压

FireDAC 下的 Sqlite [11] - 关于批量提交 SQL 命令的测试

可把下面代码直接贴在空白窗体上, 以快速完成窗体设计:object DBGrid1: TDBGrid Left = 0 Top = 0 Width = 265 Height = 338 Align = alLeft DataSource = DataSource1 TabOrder = 0 TitleFont.Charset = DEFAULT_CHARSET TitleFont.Color = clWindowText TitleFont.Height = -11 TitleFont.Name

FireDAC 下的 Sqlite [5] - 数据的插入、更新、删除

先在空白窗体上添加: TFDConnection.TFDPhysSQLiteDriverLink.TFDGUIxWaitCursor.TFDQuery.TDataSource.TDBGrid(并在设计时关联好).你也可以复制下面文本框中的内容, 然后直接往窗体上贴, 以快速完成以上的添加过程:object DBGrid1: TDBGrid Left = 16 Top = 88 Width = 361 Height = 329 DataSource = DataSource1 TabOrder =

使用 IntraWeb (43) - 测试读取 SqLite (二)

一般情况下, 数据源相关控件应该有数据模块中统一管理, 这也方便其他窗体调用; UserSessionUnit 就是一个现成的数据模块. 现在把数据源相关控件放在 UserSessionUnit 的窗体上: FDPhysSQLiteDriverLink1: TFDPhysSQLiteDriverLink; FDGUIxWaitCursor1: TFDGUIxWaitCursor; FDConnection1: TFDConnection; DataSource1: TDataSource; FD

sqlite学习笔记7:C语言中使用sqlite之打开数据库

数据库的基本内容前面都已经说得差点儿相同了.接下看看如何在C语言中使用sqlite. 一 接口 sqlite3_open(const char *filename, sqlite3 **ppDb) 打开数据库,假设数据库不存在则新建一个数据库,并打开 sqlite3_close(sqlite3*) 关闭数据库.假设关闭之前还存在没有运行完的语句,将会返回SQLITE_BUSY 二 实例 1 文件夹结构 Projects{ main.c// 代码所在文件 sqlite{// 官网下载下来的sqli