FireDAC。TFD查询。批次样本

来自RAD Studio代码示例
跳转到:航行,搜索

此示例演示如何使用阵列DML在FireDAC中。

位置

你可以找到批次示例项目位于:

  • 开始|程序| Embarcadero RAD Studio Athens |示例然后导航到:
    • 对象Pascal\Database\FireDAC\Samples\Comp Layer\TFDQuery\ExecSQL\Patch
  • 子版本存储库:
    • 您可以在中找到Delphi代码示例GitHub存储库。根据您的RAD Studio版本按名称搜索样本库。

描述

这个批次示例显示如何使用阵列DML在一个步骤中执行多个SQL INSERT命令以优化数据库填充性能。在本演示中,“批处理”和“阵列DML”术语是可以互换的。

如何使用样本

  1. 导航到上面给出的位置并打开批次.dproj.
  2. 按F9或选择运行>运行.

文件

Delphi中的文件 包含

批次.dproj
批次.dpr

项目本身。

fBatch.pas(批次)
f批次.fmx

主要形式。

实施

在运行示例之前,在设计时使用对象检查器如下:

  • 两个TFD查询命名的对象qrySelect(质量选择)qryBacth公司。这些组件实现了能够执行SQL查询的数据集:qryBacth公司负责插入查询数据库中的数据,同时qry选择负责选择查询数据库中的数据以显示数据集。为此,示例配置了这两个对象的以下属性:
    • 这个连接属性配置为指定用于连接到DBMS的FireDAC连接对象。
    • 这个SQL语言的属性qry选择设置为从{id FDQA_Batch_test}中选择*.
    • 这个SQL语言的属性qry插入设置为插入{id FDQA_Batch_test}(tint,tstring,tblob)值(:f1,:f2,:f3).
注:您可以更改SQL语言的属性qry插入在运行时通过检查插入blob复选框。
  • A类TDataSource(数据源)名为的对象数据源1。此组件提供数据集组件和窗体上的数据软件控件之间的接口。在此示例中,它用于提供数据集和网格显示数据集的位置。为此,样本设置了以下属性:
  • 这个数据集的属性数据来源设置为qryExecSQL.
  • 这个数据来源的属性数据库网格1设置为数据源1.

运行应用程序时,您会在表单上看到以下组件:

  • A类组合框标记为使用连接定义.
  • A类标签命名阵列大小。预设值为10000.
  • 两个复选框标记为插入blob(未选中)和批处理执行(选中)。
  • 两个按钮标记为执行SQL断开连接。两个按钮都被禁用。

收件人定义连接到数据库,单击使用连接定义组合框并选择一个选项。当您选择组合框的一项时,该示例将启用执行SQL断开连接按钮并取消选中插入blob复选框。然后,如果您单击执行SQL按钮,该示例执行qry批处理。SQL语句的执行取决于复选框的状态和调整阵列大小值:

  • 这个qry批处理SQL语句取决于插入blob复选框:
    • 如果未选中,则qry批处理SQL语句设置为'插入{id FDQA_Batch_test}(tint,tstring)值(:f1,:f2)'.
    • 如果选中,则SQL语句设置为'插入{id FDQA_Batch_test}(tint,tstring,tblob)值(:f1,:f2,:f3)'.
  • 单击时执行SQL按钮,带有批处理执行选中时,样本使用执行中的方法阵列DML模式,其中阵列大小label指定每个参数数组的大小。更改阵列大小值来更改参数数组的长度。另一方面,如果批处理执行则示例使用执行SQL方法来执行SQL语句。

使用

另请参见

样品