1]基本设置FDQuery1.Connection
2]执行查询SQL语句
3]执行 非查询SQL语句
4]返回所有数据 和所有 列名


1]基本设置FDQuery1.Connection

一定要 放一个  FDPhysSQLiteDriverLink1到ServerModule上

// uses FireDAC.Phys.SQLite 之后, 可不用添加 TFDPhysSQLiteDriverLink           //访问SQLite  文件数据库
  FDQuery1.Connection := UniMainModule.FDConnection1;

  UniMainModule.FDConnection1.LoginPrompt := false; // 取消登录提示框
UniMainModule.FDConnection1.Open('DriverID=SQLite;Database=test1.Sqlite3');

2]执行查询SQL语句

FDQuery1.Open('select id,name,info from atb');

3]执行 非查询SQL语句

FDQuery1.ExecSQL('INSERT INTO atb VALUES( (select max(id)+1 from atb),''aName'',''aInfo'')');

4]返回所有数据 和所有 列名, 生成网页格式,方便导出数据

   procedure UniDBGridToHTML(aFDquery :TFDQuery;aHTMLFileName:string);
var
aHTMLtext: TstringList;
j: integer;
begin
aHTMLtext := TstringList.Create;
aHTMLtext.Add
('<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> ' +
'<html> <head> <title></title> </head> ' +
' <body> <table border=".5pt solid windowtext;"; > ' +
' <col width=72 span=3 style='' width:54pt''>'); aHTMLtext.Add(' <tr > ');
for j := to aFDquery.FieldCount do
begin
aHTMLtext.Add('<td>');
aHTMLtext.Add(aFDquery.Fields.FieldByNumber(j).FieldName); // 列 名
aHTMLtext.Add('</td>');
end;
aHTMLtext.Add(' </tr> '); aFDquery.First;
while not(aFDquery.Eof) do
begin
aHTMLtext.Add(' <tr > '); for j := to aFDquery.FieldCount do
begin
aHTMLtext.Add('<td>');
aHTMLtext.Add(aFDquery.Fields.FieldByNumber(j).AsString); // 所有 值
aHTMLtext.Add('</td>');
end;
aHTMLtext.Add(' </tr> '); aFDquery.Next;
end; aHTMLtext.Add('</table> </body> </html> ');
aHTMLtext.SaveToFile(aHTMLFileName);
aHTMLtext.Free;
end;
procedure TMainForm.UniButton1Click(Sender: TObject);
begin
UniDBGridToHTML(FDquery1,'aa.html');//调用
end;

uniGUI之FDQuery(28)的更多相关文章

  1. uniGUI学习汇总

    UniGUI之UniLabel(31) uniGUI之自定义JS事件动作ClientEvents(30) uniGUI之文件下载(29) uniGUI之FDQuery(28) uniGUI之UniPo ...

  2. [控件]unigui移动端下Unidatepicker时间显示解决方案

    [控件]unigui移动端下Unidatepicker时间显示解决方案 http://tz10000.com/kong-jian-unigui-yi-dong-duan-xia-unidatepick ...

  3. Elevate Web Builder for Web Developers(类似于unigui的东西)

    推荐一款pascal 语言的web 开发工具 这几天仔细研究了一款使用Pascal 语言开发web 的工具 具体介绍可以参照这里. 先上几张他开发的页面照.

  4. 28个你必须知道的HTML5的新特性,技巧以及技术

    崭新新的页面布局 传统的: HTML5: 1. 新的Doctype 尽管使用<!DOCTYPE html>,即使浏览器不懂这句话也会按照标准模式去渲染 2. Figure元素 用<f ...

  5. CSharpGL(28)得到高精度可定制字形贴图的极简方法

    CSharpGL(28)得到高精度可定制字形贴图的极简方法 回顾 以前我用SharpFont实现了解析TTF文件从而获取字形贴图的功能,并最终实现了用OpenGL渲染文字. 使用SharpFont,美 ...

  6. 来,一起让我们越来越懒,面向CSS、JS未来编程。(9.28已更新)

    2016.10.29更新 本文存在大量的错误,仅供参考. 不知不觉在前端领域马上一个年头就要过去了,然而再看看自己的代码,果然够烂,那么为什么代码一直没有用面向对象的思维去写CSS呢?首先有两点:一点 ...

  7. MySQL报错:Got error 28 from storage engine

    今天碰到数据库出错: Got error 28 from storage engine 查了一下,数据库文件所在的盘应该没事,应该是数据库用的临时目录空间不够 问题原因: 磁盘临时空间不够导致. 解决 ...

  8. [.net 面向对象程序设计进阶] (28) 结束语——告别2015

    [.net 面向对象程序设计进阶] (28) 结束语——告别2015 <.net面向对象程序设计进阶>这一系列文章写了太长的时间了,大概有半年没写,在年底又一口气写了好几篇.在整个过程中目 ...

  9. 背水一战 Windows 10 (28) - 控件(文本类): TextBox, PasswordBox

    [源码下载] 背水一战 Windows 10 (28) - 控件(文本类): TextBox, PasswordBox 作者:webabcd 介绍背水一战 Windows 10 之 控件(文本类) T ...

随机推荐

  1. 论如何用python发qq消息轰炸虐狗好友

    因为我的某个好友在情人节的时候秀恩爱,所以我灵光一闪制作了qq消息轰炸并记录了下来. PS:另外很多人在学习Python的过程中,往往因为遇问题解决不了或者没好的教程从而导致自己放弃,为此我整理啦从基 ...

  2. JDBC——ResultSet结果集对象

    ResultSet结果集对象,封装结果.它是怎么做到封装结果的呢? 游标,类似指针索引最初指在“列名”上,要取到数据就需要让游标向下移动移动后就指向了第一行数据,然后通过一些方法把第一行的每一列都取出 ...

  3. Data Manipulation with dplyr in R

    目录 select The filter and arrange verbs arrange filter Filtering and arranging Mutate The count verb ...

  4. Postman:下载安装与基本介绍

    1.下载: (1)官网APP: https://www.getpostman.com/ (即: https://app.getpostman.com/app/download/win64 ) (2)插 ...

  5. NVMe over Fabrics 概况

    NVMe over Fabrics 技术特征 跨网络传输NVMe命令需要特殊的考虑,而不仅仅是针对本地存储内存.例如,为了远距离传输NVMe协议,理想的底层网络或fabric技术将具有以下特性: 可靠 ...

  6. Pytest学习6-跳过或xfail失败的用例

    Skip跳过用例 跳过(Skip)指,你希望如果某些条件得到满足你的测试用例才执行,否则Pytest应该完全跳过运行该用例 1. 跳过测试用例的最简单方法是使用skip装饰器标记它,可以传递一个可选的 ...

  7. linq和隐式类型var

    隐式类型 var 强类型,声明的时候必须给变量赋值,编译器会根据值来确定其类型.只能出现在局部变量或脚本代码中. 使用范围: 简单类型:如int string等 复杂类型:如数组.类等 逻辑语句:fo ...

  8. nginx禁止限制某个IP地址或网段访问服务器

    nginx配置访问ip需要修改nginx.conf文件,只需要在server中添加allow跟deny的ip即可,如下: upstream novel { server ; } server { li ...

  9. C++——程序的结构

    1.作用域和可见性 1.1 函数原型中的参数其作用域仅在()内.因此参数名称可有可无,但是参数类型需要声明. 1.2 块作用域 在块中声明的标识符其作用域自声明处起,限于块中. 1.3 类作用域 类作 ...

  10. web前端常用库

    项目中可能用到的web前端库(持续记录): 1.轻量化货币库:https://github.com/openexchangerates/accounting.js   ,美元形式.欧元形式等 2.时间 ...