我们接下来将要使用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语句。

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

  1. FireDAC中的SQLite(一)

    Windows client software,FireDAC supports two SQLite library linking modes: Static linking: the x86 s ...

  2. Android中的SQLite使用学习

    Android中的SQLite使用学习 SQLite是非常流行的嵌入式关系型数据库,轻载, 速度快,而且是开源.在Android中,runtime提供SQLite,所以我们可以使用SQLite,而且是 ...

  3. Android 开发中使用 SQLite 数据库

    SQLite 介绍 SQLite 一个非常流行的嵌入式数据库,它支持 SQL 语言,并且只利用很少的内存就有很好的性能. 此外它还是开源的,任何人都可以使用它.许多开源项目((Mozilla, PHP ...

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

    数据库的基本内容前面都已经说得差点儿相同了.接下看看如何在C语言中使用sqlite. 一 接口 sqlite3_open(const char *filename, sqlite3 **ppDb) 打 ...

  5. qt中使用sqlite存储数据

    一.sqilte的安装 在Windows上安装SQLite: 请访问 SQLite 下载页面,从 Windows 区下载预编译的二进制文件. 您需要下载 sqlite-tools-win32-*.zi ...

  6. 在vc2008 mfcC++中使用sqlite的示例

    http://owlman.org/?p=890 在C++中使用sqlite的示例 2011年8月5日admin发表评论阅读评论 最近因为工作原因,终于使我有机会腾出时间来接触了一下SQLite数据库 ...

  7. C#中的线程二(Cotrol.BeginInvoke和Control.Invoke)

    C#中的线程二(Cotrol.BeginInvoke和Control.Invoke) 原文地址:http://www.cnblogs.com/whssunboy/archive/2007/06/07/ ...

  8. C语言中如何将二维数组作为函数的参数传递

    今天写程序的时候要用到二维数组作参数传给一个函数,我发现将二维数组作参数进行传递还不是想象得那么简单里,但是最后我也解决了遇到的问题,所以这篇文章主要介绍如何处理二维数组当作参数传递的情况,希望大家不 ...

  9. Visual Studio 2010(.NET 4.0)中使用SQLite.NET

    Visual Studio 2010(.NET 4.0)中使用SQLite.NET   2011年4月1日 | 分类: DataBase, DOTNET | 标签: .net 4.0, SQLite. ...

随机推荐

  1. Jquery中使用定时器setInterval和setTimeout

    直接在ready中调用其他方法,会提示缺少对象的错误,解决方法如下: 方法1. 函数不在$(function(){....})内,setInterval第一个参数为"showAtuto&qu ...

  2. 阿里云esc云服务器IP不能访问的解决办法

    问题:阿里云服务器,专有网络,web设置完毕,在服务器中localhost能够访问,并且关闭防火墙,但是使用公网ip无法访问. 解决:找到本实例安全组,配置规则,按照要求填入80或其他端口.配置完成后 ...

  3. 用sourceTree提交代码时遇到的问题

    xcuserstate 每次并没有改什么东西,只是随便点了几下就会出现的未暂存文件,可以对其停止追踪! 右键,停止追踪,提交,推送.以后就不会再有这个讨厌的文件出现了! 还没有提交就拉代码的囧境 有的 ...

  4. centos7虚拟机(vmware)通过U盘传文件

    centos7虚拟机(vmware)通过U盘传文件 centos7虚拟机安装以后,WINDOWS给CENTOS7传文件,除了在CENTOS7安装SAMBA外,其实通过U盘也是可以的. CENTOS7对 ...

  5. C#编程(七十四)----------释放非托管资源

    释放非托管资源 在介绍释放非托管资源的时候,我觉得有必要先来认识一下啥叫非托管资源,既然有非托管资源,肯定有托管资源. 托管资源指的是.net可以自棕进行回收的资源,主要是指托管堆上分配的内存资源.托 ...

  6. could not connect to server: Connection refused (0x0000274D/10061)

    Oracle Linux 6.8 PostgreSQL Server IP: 192.168.10.220 Windows 7 x64 pgAdmin Custom Port IP: 192.168. ...

  7. HTTP协议--MyWebServer

    HTTP协议 HTTP协议是一种Web通信协议,通过特定的规则来实现服务器跟客户端的通信.HTTP协议有这样几个特点: (1)面向无连接的,一次只能处理一个请求,HTTP1.0服务器解析完客户端请求并 ...

  8. Work Management Service application in SharePoint 2016

    最近开始弄SharePoint 2016的Workflow,遇到问题发现没有了Work Management Service application,然后用PowerShell命令创建也不行,bing ...

  9. Java并发编程的艺术(十)——线程池(1)

    线程池的作用 减少资源的开销 减少了每次创建线程.销毁线程的开销. 提高响应速度 每次请求到来时,由于线程的创建已经完成,故可以直接执行任务,因此提高了响应速度. 提高线程的可管理性 线程是一种稀缺资 ...

  10. Netty Associated -- ChannelPipeline

    A list of ChannelHandlers which handles or intercepts inbound events and outbound operations of a Ch ...