QF中间件使用说明

 

       QF中间件是在2020年春节期间出现新型冠状病毒感染的肺炎疫情不敢外出,闲来无事编写的。编程是业余爱好,平时编程只会拖控件,中间件可能存在未知Bug,这个版本也只实现了简单的增删改查功能,与已有的中间件功能差距巨大,请高手勿喷!

QF中间件使用FDmemTable、mORMot和参考咏南开源mORMot中间件的基础上开发而成,QFDataSet包含QFRest、QFTable和QFQuery这3个控件)方便使用,QF中间件已测试MSSQL2000、postgresq、MySQL和SQLite等数据库,三层应用环境使用正常,ORACLE数据库没环境测试,MSSQL、SQLite和ORACLE使用mORMot自带数据引擎,其中SQLite直接将引擎编译到服务端程序,MySQL和POSTGESQL使用免费开源控件zeosdbo-7.2.4)。

QF中间件同时解决了盒子论坛提出使用mORMot时遇到的若干问题,利用本中间件可以简单快捷编写三层应用。

:http://bbs.2ccc.com/topic.asp?topicid=559565

一、QF中间件服务端设置

QF中间件服务端采用windows的services方式,安装后以services运行。

将QFMg.exe和QFSvr.exe这2个文件拷贝到服务器指定的文件夹,运行QFMg,exe配置相关参数。

1.配置数据库设置:选择数据库类型、数据库IP、数据库名称、用户和密码

POSTGESQL:需要将libeay32.dll、libiconv-2.dll、libintl-8.dll、libpq.dll、msvcr120.dll和ssleay32.dll放到QFSvr.exe文件夹中。
   MSSQL:不需要单独数据库驱动;
   MYSQL:将libmysql.dll放到QFSvr.exe文件夹中;   
   SQLite:已将引擎嵌入QFSvr.exe
   ORACLE:未测试。

2.设置服务器参数

3.服务设置:安装QF中间件服务,安装成功后启动QF中间件服务。

二、QFDataSet控件的使用说明

1、QFRest控件

1).QFRest.IP:服务器IP

2).QFRest.Port:服务器端口(默认2006)

3).QFRest.User:认证名称

4).QFRest.Passwords:认证密码

5).QFRest.Connect:连接服务器

6).QFRest.DisConnect:断开服务器连接

2、QFTable控件

1).QFTable.Rest:远程连接控件

2).QFTable.IndexFieldNames:更新时的主键字段

3).QFTable.NoField:更新时不更新的字段列表,多个字段时用逗号分割

4).QFTable.TableName:表名称

5).QFTable.ApplyUpdates:当需要保存到远端时用。

6).QFTable.PageSize:每页的记录数,默认为100

7).QFTable.PageNo:当前页

8).QFTable.PageIndexMax:当前表最大页数

9).QFTable.Open:打开表时,根据PageNum和PangeIndex调用指定记录

QFTable1.PageSize := 100;

QFTable1.PageNo := 1;//改变这个值读取指定页的记录

QFTable1.Open;

10).QFTable.Locate(const AKeyFields: String; const AKeyValues: Variant; AOptions: TLocateOption):Boolean;

例子:

QFTable1.Locate('BGBH,ID',VarArrayOf(['HYA2018-25318',17]), loPartialKey);

11).打开前一页例子:

QFTable1.PageSize := PageNum;

QFTable1.PageIndex := pn-1;//改变这个值读取指定页的记录

QFTable1.Open;

12).打开下一页例子:

QFTable1.PageSize := PageNum;

QFTable1.PageNo := pn+1;//改变这个值读取指定页的记录

QFTable1.Open;

3、QFQuery控件

1).QFQuery.Rest:远程连接控件

2).QFQuery.SQL:设置SQL语句

3).QFQuery.Open:执行QFQuery.SQL的Sql语句

4).QFQuery.Open(SQL:string):执行SQL

5).QFQuery.ExecSQL

QFQuery例子:

QFQuery1.SQL := Edit2.Text;

QFQuery1.Open;

DataSource1.DataSet := QFQuery1;

三、Delphi开发环境

Library paths加入mORMot、Components、zeosdbo-7.2.4\src、zeosdbo-7.2.4\src\core、zeosdbo-7.2.4\src\core\dbc、zeosdbo-7.2.4\src\core\parsesql、zeosdbo-7.2.4\src\plain,其中mORMot和zeosdbo-7.2.4的文件夹是精简后所需的全部文件

Demo的界面:

备注:Demo服务端放在5M带宽的天翼云主机。

2020-01-30

QF中间件的更多相关文章

  1. Linux 远程登录——(九)

    Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE /* Style Definitions */ table.MsoNormalTable ...

  2. django的中间件

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAA2EAAAGUCAIAAAAzrr3rAAAgAElEQVR4nOy9d5wcx3kmzAXl80m6zy

  3. CBV加装饰器解决登录注册问题和 <<中间件>>

    文本目录 CBV加装饰器解决登录注册问题 一:什么是中间件 二:中间件有什么用 三:自定义中间件 四:中间件应用场景 五:SCRF TOKEN跨站请求伪造 六: 其他操作 CBV加装饰器解决登录注册问 ...

  4. ASP.NET Core 中的那些认证中间件及一些重要知识点

    前言 在读这篇文章之间,建议先看一下我的 ASP.NET Core 之 Identity 入门系列(一,二,三)奠定一下基础. 有关于 Authentication 的知识太广,所以本篇介绍几个在 A ...

  5. ASP.NET Core应用的错误处理[3]:ExceptionHandlerMiddleware中间件如何呈现“定制化错误页面”

    DeveloperExceptionPageMiddleware中间件利用呈现出来的错误页面实现抛出异常和当前请求的详细信息以辅助开发人员更好地进行纠错诊断工作,而ExceptionHandlerMi ...

  6. ASP.NET Core应用的错误处理[2]:DeveloperExceptionPageMiddleware中间件如何呈现“开发者异常页面”

    在<ASP.NET Core应用的错误处理[1]:三种呈现错误页面的方式>中,我们通过几个简单的实例演示了如何呈现一个错误页面,这些错误页面的呈现分别由三个对应的中间件来完成,接下来我们将 ...

  7. ASP.NET Core 中间件之压缩、缓存

    前言 今天给大家介绍一下在 ASP.NET Core 日常开发中用的比较多的两个中间件,它们都是出自于微软的 ASP.NET 团队,他们分别是 Microsoft.AspNetCore.Respons ...

  8. .NET Core中间件的注册和管道的构建(3) ---- 使用Map/MapWhen扩展方法

    .NET Core中间件的注册和管道的构建(3) ---- 使用Map/MapWhen扩展方法 0x00 为什么需要Map(MapWhen)扩展 如果业务逻辑比较简单的话,一条主管道就够了,确实用不到 ...

  9. .NET Core中间件的注册和管道的构建(2)---- 用UseMiddleware扩展方法注册中间件类

    .NET Core中间件的注册和管道的构建(2)---- 用UseMiddleware扩展方法注册中间件类 0x00 为什么要引入扩展方法 有的中间件功能比较简单,有的则比较复杂,并且依赖其它组件.除 ...

随机推荐

  1. GSON使用笔记(3) -- 如何反序列化出List

    GSON使用笔记(3) -- 如何反序列化出List 时间 2014-06-26 17:57:06  CSDN博客原文  http://blog.csdn.net/zxhoo/article/deta ...

  2. vb.net FTP上传下载,目录操作

    https://blog.csdn.net/dzweather/article/details/51429107 FtpWebRequest与FtpWebResponse类用来与特定FTP服务器进行沟 ...

  3. Redar Chart_Study

    1.Select a theme 2.Experiment with visual customization 3.Edit groups and categories 4.Creat a scrip ...

  4. P1064 朋友数

    P1064 朋友数 转跳点:

  5. php绕过open_basedir设置

    原理关于open_basedir    open_basedir是php.ini中的一个配置选项    它可将用户访问文件的活动范围限制在指定的区域,    假设open_basedir=/home/ ...

  6. Microsoft Windows 实用程序 Sysinternals Utilities Index

    最新页面时间:2017年5月16日 Sysinternals被MS收购--windows internals共近70多个工具集 Sysinternals套件 整套Sysinternals Utilit ...

  7. JAVA String类常用方法

    一.String类String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象.java把String类声明的final类,不能有类.String类对象创建 ...

  8. 解析基于keras深度学习框架下yolov3的算法

    一.前言 由于前一段时间以及实现了基于keras深度学习框架下yolov3的算法,本来想趁着余热将自己的心得体会进行总结,但由于前几天有点事就没有完成计划,现在趁午休时间整理一下. 二.Keras框架 ...

  9. Golang的运算符-逻辑运算符

    Golang的运算符-逻辑运算符 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.逻辑运算符概述 !: 非运算符,表示NOT(有种取反的意思),如"!ture" ...

  10. 图片字节流生成bmp文件

    1 BITMAPFILEHEADER bfh;//文件头 2 bfh.bfType=0x4d42; bfh.bfOffBits=sizeof(bfh)+sizeof(BITMAPINFOHEADER) ...