BCB数据库问题总结
1、数据过滤Filter使用,查询数据时语句写法使用到格式输出以及字符串加引号问题;
格式输入:sSql=Format(sSql,OPENARRAY(TVarRec,(sItem,sInput)));
字符串加引号:String sInput=AnsiQuotedStr(this->Edsearch->Text, L'\'');
void __fastcall TForm1::cxBtFilterClick(TObject *Sender)
{DataModule2->FDDianPu->Filtered=false;DataModule2->FDDianPu->Filter="patientname="+AnsiQuotedStr(this->Edsearch->Text, L'\'');DataModule2->FDDianPu->Filtered=true;
}
2、SetRange范围的使用
3、数据定位:Locate LocateEx方法详解
Delphi Locate函数[1] - 查询、定位_mob604756ea4c07的技术博客_51CTO博客
void __fastcall TForm1::butlocateClick(TObject *Sender)
{TLocateOptions Opts;Opts.Clear();Opts<<loPartialKey;DataModule2->FDDianPu->Locate("BLH",this->Edsearch->Text,Opts);
}
原型:
virtual bool __fastcall Locate(const System::UnicodeString AKeyFields, const System::Variant &AKeyValues, Data::Db::TLocateOptions AOptions = Data::Db::TLocateOptions() );
在使用Locate时AOptions中:
如果使用loCaseInsensitive就代表不分大小写查询数据;
如果使用loPartialKey就代表要以模糊查询(部分字符串)来查询数据。
LocateEx方法一:
virtual bool __fastcall LocateEx(const System::UnicodeString AKeyFields, const System::Variant &AKeyValues, TFDDataSetLocateOptions AOptions = TFDDataSetLocateOptions() , System::PInteger ApRecordIndex = (System::PInteger)(0x0));
LocateEx的第一、二个参数与Locate一样,第三个参数扩充,第四个参数回传查到的数据在数据集中的位置;
LocateEx方法二:
virtual bool __fastcall LocateEx(const System::UnicodeString AExpression, TFDDataSetLocateOptions AOptions = TFDDataSetLocateOptions() , System::PInteger ApRecordIndex = (System::PInteger)(0x0))/* overload */;
第一个参数为表达式(String),第二个参数与方法一一样,第三个参数为索引(可以不传)
4、Lookup LookupEx
5、缓存批量更新数据/快储功能
void __fastcall TForm1::butsavaClick(TObject *Sender)
{DataModule2->FDDianPu->CachedUpdates=true; //打开缓存更新DataModule2->FDDianPu->ApplyUpdates(); //更新数据DataModule2->FDDianPu->CommitUpdates(); //清空缓存
}
SavaPoint方法
6、VarArrayOf()用法,返回一个可变动态数组,第一个参数为Varint类型的数组,第个参数为结束的数组索引(从0开始)。
Variant option[4];option[0]="111";option[1]="222";option[2]="333";option[3]="444";DataModule2->Tip->Show("",VarListArrayToStr(VarArrayOf(option,3)));
7、DML处理大量数据,TFDQuery组件的创建参数Params,ArraySize为处理的记录条数。
8、排序及索引
可以使用TFDQuery组件的Indexex属性快递创建索引,Name索引名,Fields字段名,Active激活属性。
9、快储更新错误:OnReconcileError
BCB数据库问题总结相关推荐
- BCB数据库构件用法的总结
1.为了便于数据库的管理和简化sql语句,一般我们都会使用 DataModule–专门用于放置数据访问组件的框架来管理数据库组件.比如在整个程序中某些窗体可能需要查询数据库的信息,到时候只需要把一个查 ...
- Android 8.0 学习(23)---recovery 流程分析
Android 8.0 recovery 流程分析 这里主要分析non A/B模式下的recovery流程 A/B模式下的recovery在boot中 后续会不断补充,如果有疏漏或者错误的地方,请 ...
- Android 8.0 recovery 流程分析
这里主要分析non A/B模式下的recovery流程 A/B模式下的recovery在boot中 后续会不断补充,如果有疏漏或者错误的地方,请指出,共同学习,谢谢! 一.流程分析 首先列出recov ...
- Spring Boot参考指南
Spring Boot参考指南 作者 菲利普·韦伯,戴夫 Syer,约什 长,斯特凡 尼科尔,罗布 绞车,安迪·威尔金森,马塞尔 Overdijk,基督教 杜普伊斯,塞巴斯蒂安·德勒兹,迈克尔·西蒙斯 ...
- Oracle RMAN CATALOG数据库的配置
RMAN CATALOG数据库的配置 1.catalog database 的功能 1)集中存放rman的资料库(备份的元数据),并且可以和target database 的controlfile同步 ...
- 二、Android BCB的作用
这篇很多部分来源于其他博客,我个人进行了总结,可以串联起来整个ota流程 1.问题来源 2.固件内容与开机流程 3.开机BCB作用 4.recovery升级交互流程 1.问题来源 查看解密流程和rec ...
- 关于BCB的安装过程
1.安装C++builder主程序: |--说明:安装过程序列号:HAAL-DANSGN-FZR5AG-M3BS. 2.打开DelphiDistiller.exe: |--说明:打开后选择Tweaks ...
- firebird嵌入式数据库
firebird是一个跨平台的开源数据库,适用interbase授权协议(IPL),从borland的interbase脱胎而来.以前用interbase/firebird的时候,发布程序的时候哪怕只 ...
- 数据库课程设计作业报告
题目大概是用可视化编程实现一个简单的数据库管理系统 我用的是BCB 题目虽然是简单 但也明白了很多以前以为懂的问题 代码到没什么 这种题目用BCB的话已经不用几行代码了 关键是了解了这些名词Parad ...
最新文章
- 佛弟子有三样东西需要永远保密!
- C++与MATLAB数组的存储结构
- 众筹网02_项目环境搭建
- xampp mac mysql 密码_max系统中修改xampp的mysql默认密码
- idea生成有参构造的快捷键,idea生成有参构造的快捷键_Idea_学习_09_Idea 方法自动生成参数默认名...
- Elasticsearch 实战1:ES 项目实战(一)Java 集成 Spring Data Elasticsearch(一):简介及环境搭建
- webservice传递特殊字符时的解决的方法
- python restful api_用Python语言写一个restful API
- Pwn2Own 2021奥斯汀黑客大赛公布类别、目标及奖金
- 异常检测时间序列_DeepAnT —时间序列的无监督异常检测
- 对tensor不同的索引方法和索引越界问题解决思路
- 安装terrasolid模块的“setup.exe”弹窗setup.inf not found
- Attention注意力机制
- SYN FLOOD WINCAP
- 从一到无穷大--读后感
- 5v功放芯片哪个音质好
- 十个Mac端设计软件
- AMCL源码架构讲解与详细分析
- Pycharm取消下划线波浪线
- 《计算机网络——自顶向下方法》学习笔记——网络层:数据平面