使用 IntraWeb (44) - 测试读取 SqLite (三)

使用数据连接池(TIWDataModulePool).


新建工程时勾选 Pool Data Connections:


新增的 Pool(TIWDataModulePool) 被放在 ServerController 的窗体上(其实它也是个数据模块), 需要知道的变化是它增加了两个函数:


function LockDataModule: TDataModule1;
procedure UnlockDataModule(ADataModule: TDataModule1);

同时 Wizard 还自动生成了一个专门的数据模块 DataModuleUnit;
先把数据源相关控件放在 DataModuleUnit 的窗体上:


FDPhysSQLiteDriverLink1: TFDPhysSQLiteDriverLink;
FDGUIxWaitCursor1: TFDGUIxWaitCursor;
FDConnection1: TFDConnection;
DataSource1: TDataSource;
FDTable1: TFDTable;

然后在其 OnCreate 事件中写代码:


procedure TDataModule1.DataModuleCreate(Sender: TObject);
begin
  FDTable1.Connection := FDConnection1;
  DataSource1.DataSet := FDTable1;

  FDConnection1.DriverName := ‘SQLite‘;
  FDConnection1.Params.Add(‘Database=FDDemo.sdb‘); //别忘了把 FDDemo.sdb 复制到程序目录下

  FDTable1.TableName := ‘Orders‘;
//  FDTable1.Active := True;
end;

最后回到主窗体, 先放个 IWDBGrid1: TIWDBGrid; 然后写代码:


uses DataModuleUnit, ServerController;

procedure TIWForm1.IWAppFormCreate(Sender: TObject);
var
  fDataModule: TDataModule1;
begin
  fDataModule := LockDataModule;
  IWDBGrid1.DataSource := fDataModule.DataSource1;
  fDataModule.FDTable1.Active := True;
  UnlockDataModule(fDataModule);

  IWDBGrid1.Align := alClient;
end;

效果图:


使用 IntraWeb (44) - 测试读取 SqLite (三)

时间: 2024-08-01 22:32:19

使用 IntraWeb (44) - 测试读取 SqLite (三)的相关文章

使用 IntraWeb (42) - 测试读取 SqLite (一)

为通过 FireDAC(XE5开始支持的) 使用 SqLite, 现在已换成 XE6 + IntraWeb v14.0.32 Ultimate. 首先把官方提供的 C:\Users\Public\Documents\Embarcadero\Studio\14.0\Samples\data\FDDemo.sdb 复制到程序目录下, 用于测试. 在空白窗体上添加控件: FDPhysSQLiteDriverLink1: TFDPhysSQLiteDriverLink; FDGUIxWaitCursor

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

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

windows 与linux 下用C++读取sqlite实现文件复制(二)

2.分别查询读取sqlite表中的字段. 1 //在数据库中查询表: 2 // 执行SQL 3 char **dbResult; //是 char ** 类型,两个*号 4 int nRow, nColumn; 5 sprintf(sql, "select * from test1"); 6 int result = sqlite3_get_table( conndb, sql, &dbResult, &nRow, &nColumn, &err_msg

Swift实现手势解锁&界面跳转&读取SQLite数据库

按钮是根据屏幕大小自动布局,所以不会因为设备不同导致错位 数据库操作是GitHub上的SQLiteDB 下面是Storyboard的设计图 下面是实现的代码 // // ViewController.swift // // // Created by XWJACK on 15/12/15. // Copyright © 2015年 XWJACK. All rights reserved. // import UIKit class ViewController: UIViewController

BeagleBone Black板第九课:测试读取ADC数据

BBB板第九课:测试读取ADC数据 之前我们初步学习了GPIO的使用方法,接下来认识下BBB板上ADC数据的读取操作,因为用BBB板做外部控制,接收外部传感器的一些模拟数据,模数转换ADC是需要用到的.所以在这里我也测试一下这BBB板的ADC简单功能,以后有深入学习到知识再进行补充. ADC资源引脚,P9_32至P9_40共九个引脚,其中P9_32为电源正极,P9_34为共地,其他七个对应七个ADC输入脚,因为有一个Ain_7估计是内部使用了,所以我们只使用Ain_0至Ain_6这七个ADC.

Python读取SQLite文件数据

近日在做项目时,意外听说有一种SQLite的数据库,相比自己之前使用的SQL Service甚是轻便,在对数据完整性.并发性要求不高的场景下可以尝试! 1.SQLite简介: SQLite是一个进程内的库,实现了自给自足的.无服务器的.零配置的.事务性的 SQL 数据库引擎.它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它(如安卓系统),它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了.它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多

[转帖]linux下CPU、内存、IO、网络的压力测试,硬盘读写速度测试,Linux三个系统资源监控工具

linux下CPU.内存.IO.网络的压力测试,硬盘读写速度测试,Linux三个系统资源监控工具 https://blog.51cto.com/hao360/1587165 linux_python关注0人评论57974人阅读2014-12-06 20:17:16 一.对CPU进行简单测试: 1.通过bc命令计算特别函数 例:计算圆周率 echo "scale=5000; 4*a(1)" | bc -l -q MATH LIBRARY        If bc is invoked w

php读取sqlite数据库入门实例

php读取sqlite数据库的例子,php编程中操作sqlite入门实例.原文参考:http://www.jbxue.com/article/php/22383.html在使用SQLite前,要确保php.ini中已经启用sqlite和pdo配置 打开PHP.INI文件,打下以下扩展:extension=php_pdo.dll extension=php_pdo_sqlite.dllextension=php_sqlite.dllsqlite_open命令是打开一个数据库文件. 如果没有文件则创

android 读取SQLite android could not open the database in read/write mode错误

由于AndroidManifest.xml文件中uses-permission没有设置权限问题 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" /> <uses-permissio