FDQuery

FDQuery1->ChangeCount;也有UpdatesPending属性
 FDQuery1->ApplyUpdates()

ExecSQL('select * from t where id=:?',[100]);

FDQuery1->Table->Rows[2].Free();
 FDQuery1->UpdateCursorPos();
 FDQuery1->Resync(TResyncMode());

FDQuery1->FetchAll();

FDQuery1->Open("select * from t")

FDQuery1->Open("select * from t where id=?",[100]);

FDQuery1->OpenOrExecute()

FDQuery.Constraints.Add.CustomConstraint := 'FIELD_NAME > 1';
FDQuery.UpdateConstraints;
FDQuery.Table.Constraints.Check(FDQuery.GetRow(), rsModified, ctAtEditEnd);

隐藏当前行

FDQuery1->UpdateCursorPos();
 FDQuery1->GetRow()->Free();
 FDQuery1->Resync(TResyncMode());
 FDQuery1->UpdateCursorPos();

增强的Locate功能LocateEx、LookupEx函数

lxoCheckOnly  If included, then LocateEx does not:

Change the current position. Fire BeforeScroll / AfterScroll events. Finish editing mode.

FDQuery1.Data;

FDMemTable2.Data := FDQuery1.Data;

Delta

ADMemTable1.FilterChanges := [rtModified, rtInserted, rtDeleted];
ADMemTable1.Data := ADQuery1.Delta;

FilteredData

Represents the currently visible dataset data.

FDQuery1.SavePoint 还原点

var
iSavePoint: Integer;
....
// remember changes log state
iSavePoint := FDMemTable1.SavePoint;
try
FDMemTable1.AppendRecord(....);
FDMemTable1.AppendRecord(....);
FDMemTable1.AppendRecord(....);
...
FDMemTable1.Delete;
// mark changes as persistent and clear change log
FDMemTable1.CommitUpdates;
except
// in case of exception, undo changes
FDMemTable1.SavePoint := iSavePoint;
raise;
end;

FDQuery1.SourceView

var
i, iVal, iMax: Integer;
....
// searching the maximum value of ID integer field, without navigating through dataset
iMax := ;
for i := to FDQuery1.SourceView.Rows.Count - do
if FDQuery1.SourceView.Rows[i].GetData('id', @iVal) and (iVal > iMax) then
iMax := iVal;

FDQuery1.Table

// delete all rows, where ID = 100, without navigating through dataset
for i := FDQuery1.Table.Rows.Count - downto do
if FDQuery1.Table.Rows[i].GetData('id') = then
FDQuery1.Table.Rows[i].Delete;
FDQuery1.Resync([]);

强大的功能来了,FDQuery提供了遍历数据集,而不移动当前记录指针的功能。这是ADOQuery、BDEQuery一直没有的功能!!这样和.net的DataSet有的一拼。

 for (int i = ; i < FDQuery1->RecordCount; i++)
{
Caption = FDQuery1->Table->Rows->ItemsI[i]->GetData("id");
}

取得当前记录的前一条和后一条的数据。

FDQuery1->Table->Rows->ItemsI[FDQuery1->RecNo - 2]->GetData("id");
 FDQuery1->Table->Rows->ItemsI[FDQuery1->RecNo]->GetData("id");

AbortJob

AttachTable

CopyDataSet

CopyFields

CopyRecord

EmptyDataSet

EmptyView

FDQuery1.BeginBatch;
FDQuery1.EndBatch;
ExecSQL

FetchBlobs

FetchDetails

GetDetailDataSets(System::Generics::Collections::TList__1<TDataSet*>* List);

GetNextPacket

GetParentRow

GetResults

IsSequenced

NextRecordSet

Reconcile

RefreshRecord

RevertRecord

Resync

UpdateRecord

FireDACQuery FDQuery New的更多相关文章

  1. fdquery update

    fdquery  update this->FDQuery1->CachedUpdates; this->FDQuery1->UpdateOptions->KeyFiel ...

  2. FDQuery 怎么能插入NULL参数

    [FireDAC][Phys][MSSQL]-335. Parameter [fieldAA] data type is unknown. Hint: specify TFDParam.DataTyp ...

  3. FireDAC FDQuery

    http://docwiki.embarcadero.com/RADStudio/XE6/en/TFDMemTable_Questions#Q:_How_can_I_copy_all_records_ ...

  4. FDQuery sqlserver 临时表

    用FDQuery执行创建临时表,查不到临时表,用ADOQuery和BDEQuery均正常,比较发现用ADOQuery执行的时候只有SQL没有调用sql的系统存储过程sp_prepexec. 是fdqu ...

  5. ClientDataSet + DataSetProvider + FDQuery 的bug

    ClientDataSet + DataSetProvider  +FDQuery 有 bug ClientDataSet + DataSetProvider  +ADOQuery正常. Client ...

  6. FDQuery Out of memory

    4万行记录 FDQuery查询 Out of memory sql server 可以查询成功 First chance exception at $7505D722. Exception class ...

  7. 利用QJSON将FDQuery转成JSON串

    服务器要支持Http协议,打算采用Http+JSON的方式来交换数据.一开始考虑使用superobject,因为以前使用比较多,比较熟悉. 代码如下: class function FDQueryTo ...

  8. FDQuery多表更新生成sql语句的问题

    query.sql='select  a,b,c,d,e from a,b,c where ....'; 来源3个表, 设计时添加字段列表,每个字段有Origin属性 分别是a.a,b.b,c.c格式 ...

  9. uniGUI之FDQuery(28)

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

随机推荐

  1. linux下 mysql主从备份

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/czh0423/article/details/26720539 一.准备 用两台server做測试: ...

  2. 批处理(bat)命令学习的一些总结

    这篇笔记是我对批处理学习的一些总结,能在系统帮助里找到的内容我就不写了,太偏门的也不写,只写些个人感觉很好用的技巧,大部分属于整理 一.set 篇: 1.set(无开关) set .=test set ...

  3. java面试笔试题收集

    转载过来看看.... J2SE基础 1. 九种基本数据类型的大小,以及他们的封装类. 2. Switch能否用string做参数? 可以 3. equals与==的区别. 4. Object有哪些公用 ...

  4. Java使用Unsafe接口操作数组Demo

    public class unSafeArrayDemo { private static final sun.misc.Unsafe UNSAFE; private static final lon ...

  5. RAW+ASM 的RAC 安装文档

    实验平台:Oracle 10gR2 RAC + RHEL 4.0 +VMWare GSX 3.2.0 安装步骤: 1.安装前准备及OS安装配置 2.安装Oracle 10gR2 clusterware ...

  6. node 知识点

    问:局部安装如何使用npm run命令? 答:如果已局部安装了babel-cli(babel-cli自带babel-node命令),package.json文件配置如下: "scripts& ...

  7. django 获取前端获取render模板渲染后的html

    function GetProxyServerByGroup(ths, action){ var _html = $.ajax({ url: "/nginx/get_proxy_server ...

  8. Nginx 下部署 HTTPS 与安全调优

    什么是 HTTPS?# HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的 ...

  9. Servlet 串联过滤器

    1. 串联Servlet过滤器的工作流程 2. 创建两个过滤器 MyFilter1和MyFilter2 1) MyFilter1 package com.example.filter; import ...

  10. C#调用Python脚本的简单示例

    C#调用Python脚本的简单示例 分类:Python (2311)  (0)  举报  收藏 IronPython是一种在 .NET及 Mono上的 Python实现,由微软的 Jim Huguni ...