ODAC(V9.5.15) 学习笔记(四)TCustomDADataSet(4)
6.Options
TCustomDADataSet的选择项为TDADataSetOptions,其成员介绍如下表 :
名称 |
类型 |
说明 |
|
TDADataSetOptions |
|||
AutoPrepare |
Boolean |
执行SQL前是否自动执行Prepare |
|
CacheCalcFields |
Boolean |
缓冲计算字段(TField.Calculated)和Lookup字段(Tfield.Lookup),能有效提高数据集访问速度,但是也会导致内存使用增加 |
|
CompressBlobMode |
Boolean |
存储的BLOB字段内容是否进行压缩 |
|
DefaultValues |
Boolean |
数据集将自动填写字段的DefaultExpression属性 |
|
DetailDelay |
Integer |
主数据集记录滚动情况下,获取或从表数据集数据的延时时间(毫秒),缺省为0表示立即刷新 |
|
FieldsOrigin |
Boolean |
打开数据集时是否自动获取各个字段的Origin属性值 |
|
FlatBuffers |
Boolean |
决定如何处理ftString和ftVarBytes类型的字段对字符串结尾。如果是True则没有结束符 |
|
LocalMasterDetail |
Boolean |
主表的该属性如果为True,表示在本地形成一个Master/Detail关系。一般情况下,主从关系数据集是先开启主数据集,针对主数据集的每一条记录,从数据集去获取相应的数据,这样最大的诟病是如果主数据集记录有多少条,就需要执行多少次从数据集的查询,效率非常低下。通过本地建立主从关系,并开启本地的缓冲模式,将大大提高数据库服务器的使用效率。 另外从表的缓冲模式开启(CachedUpdates=Ture)也必须是在LocalMasterDetail为True情况下才有效。 |
|
LongStrings |
Boolean |
如果为True,则当字符串字段的长度超过255时,按照TStringField处理 |
|
NumberRange |
Boolean |
是否对TIntegerField或TFloatField类型字段的取值范围进行最大和最小限制 |
|
QueryRecCount |
Boolean |
如果数据集的FetchAll属性为False,则数据集会执行SQLRecCount中的SQL语句获取数据集数量,并填写在RecordCount属性上 |
|
QuoteNames |
Boolean |
在自动生成的SQL语句中罗列所有相关字段 |
|
RemoveOnRefresh |
Boolean |
调用RefreshRecord刷新数据时,自动删除数据库中已经不存在的记录。这些记录有可能是被其他用户删除了。 |
|
RequiredFields |
Boolean |
如果为True,则数据集在开启时自动将数据库中NOT NULL字段对象设置Required属性为True |
|
ReturnParams |
Boolean |
如果为True,则插入或更新数据记录后,利用SQLInsert或SQLUpdate语句中的OUT参数获取数据库中最新的值 |
|
SetFieldsReadOnly |
Boolean |
如果为True,则自动将数据集中非更新表或数据字段的ReadOnly属性设置为True |
|
StrictUpdate |
Boolean |
当数据集的更新、删除和新值操作从数据库返回发生作用的记录数不为1时触发异常,RefreshRecord函数返回的记录数大于1时也会触发异常 |
|
TrimFixedChar |
Boolean |
是否对字符串字段自动去除空格 |
|
UpdateAllFields |
Boolean |
在自动生成INSERT或UPDATE语句时是否列举全部字段 |
|
UpdateBatchSize |
Integer |
当数据集处于缓冲模式下时,允许进变动数据批量提交处理的数量,缺省为1 |
|
TOraDataSetOptionsDS |
|||
AutoClose |
Boolean |
当获取到全部数据后,自动关闭OCI的游标。 |
|
CacheLobs |
Boolean |
是否在本地开辟缓冲来保存BLOB数据 |
|
DeferredLobRead |
Boolean |
如果为True,则Oracle8下的BLOB字段只有在需要时才读取 |
|
HideRowId |
Boolean |
是否隐藏ROWID字段,缺省True |
|
KeepPrepared |
Boolean |
当数据集关闭后,是否继续保持准备状态 |
|
ScrollableCursor |
Boolean |
如果为True,则ODAC不再为数据建立本地数据集光标,而是使用服务器的游标,且该游标是允许双向滚动的 |
|
TOraDataSetOptions |
|||
ExtendedFieldsInfo |
Boolean |
数据集在开启时是否获取字段的扩展信息,对TSmartQuery组件而言缺省是True,其他数据集组件是False |
|
FullRefresh |
Boolean |
在执行RefreshRecord函数时是否刷新所有字段,False时只刷新更新字段 |
|
FieldsAsString |
Boolean |
是否将BLOB字段以外的其他数据类型的字段都按照字符串字段处理 |
|
PrefetchRows |
Integer |
当执行SQL进行数据预读取时,通过OCI接口获取数据的记录数 |
|
PrepareUpdateSQL |
Boolean |
更新数据的SQL语句在执行前是否自动进行准备 |
|
RawAsString |
Boolean |
是否将RAW数据类型的字段按照字符串类型字段处理,缺省True |
|
ReflectChangeNotify |
Boolean |
如果是True,且数据集的ChangeNotification属性被指定了一个组件,那么当数据集对应的表在数据库中进行了DML或DDL变化,将产生变更通知消息,并对当前数据集进行相应刷新。 |
|
StatementCache |
Boolean |
是否允许OCI进行该数据集的执行SQL的语句缓冲。启用该功能前必须确保TOraSession组件的Options.StatementCache处于开启状态。 |
ODAC(V9.5.15) 学习笔记(四)TCustomDADataSet(4)的更多相关文章
- ODAC(V9.5.15) 学习笔记(四)TCustomDADataSet(1)
1.SQL相关 名称 类型 说明 BaseSQL String 没有被AddWhere.SetOrderBy.FilterSQL等方法处理过的原始SQL语句 FinalSQL String 被AddW ...
- ODAC(V9.5.15) 学习笔记(四)TCustomDADataSet(5)
7.其他 名称 类型 说明 FindKey 类似于BDE的相关功能,在当前数据集中查找指定的记录 FindNearest 移动游标到最符合查找要求的第一条记录处 FindMacro 当前数据集中是否存 ...
- ODAC(V9.5.15) 学习笔记(四)TCustomDADataSet(3)
4. 主从表关系 名称 类型 说明 MasterSource 从表对应于主表的DataSource组件 DetailFields 从表中对应于主表字段的外键字段 MasterFields 主表中关联从 ...
- ODAC(V9.5.15) 学习笔记(四)TCustomDADataSet(2)
2.连接相关 名称 类型 说明 Connection 指向一个数据库连接对象 Disconnected 设置为True将在数据库关闭后继续保持数据集的开启状态. 3. 数据获取 名称 类型 说明 Fe ...
- ODAC(V9.5.15) 学习笔记(四)TOraQuery (1)
TOraQuery是ODAC中常用的一个组件,其继承关系如下: TDataSet ---TMemDataSet ---TCustomDADataSet ---TOraDataSet ---TCusto ...
- ODAC(V9.5.15) 学习笔记(四)TOraDataSet
名称 类型 说明 SequenceMode TSequenceMode ODAC可以直接利用Oracle中的序列对象为表的主键赋值,从而实现主键自动增长的功能.该属性决定了在什么场合下使用序列: sm ...
- ODAC(V9.5.15) 学习笔记(四)TMemDataSet (1)
所有的数据集类组件都是从TMemDataSet继承下来的,该组件实现了内存中对数据的管理,其主要的属性.方法和事件如下. 1.数据更新 名称 类型 说明 CachedUpdates Boolean 数 ...
- ODAC(V9.5.15) 学习笔记(十四)TCRBatchMove
名称 类型 说明 AbortOnKeyViol Boolean 在处理数据时,如果发生主键冲突或主键校验失败时,是否中断 AbortOnProblem Boolean 发生问题时是否中断 Change ...
- ODAC(V9.5.15) 学习笔记(四)TMemDataSet (3)
3.其他 名称 类型 说明 GetBlob TBlob 按照字段名获取当前数据集中某个Blob类型的字段值,并以TBlob对象形式返回 Prepared Boolean 检查Query的SQL是否已准 ...
随机推荐
- react的props验证
Props 验证使用 propTypes,它可以保证我们的应用组件被正确使用,React.PropTypes 提供很多验证器 (validator) 来验证传入数据是否有效. 当向 props 传入无 ...
- Ajax三级联动
全国省市县查询 html代码 <!doctype html> <html> <head> <meta charset="utf-8"> ...
- VS2013打包程序步骤
VS自带的打包程序默认是没有安装的,如果有打包的需要,需要自己去下载一个安装程序 1.右击解决方案,选择添加项目,在打开的对话框中找到[已安装]-[模板]-[其他项目]-[安装和部署],如图示.第一 ...
- 说说html 的<!DOCTYPE>声明&标准模式与兼容模式
我们都知道<!DOCTYPE>声明位于文档的最前面,处于<html>标签之前. <!DOCTYPE>声明不是html标签,它的作用:告知web浏览界面应该使用哪个h ...
- 编写python的程序
执行python程序有两种方式: 1.交互式环境:输入代码立即执行 优点:调试程序方便 缺点:无法永久保存程序 2.代码写入文件 ...
- vue-cli 脚手架搭建
1,下载node.js node.js 集成npm 管理器 2,打开命令行工具(win+R) node -v npm -v 出现对应版本号,则安装完成 3,配置代理信息 详见代理设定:https:// ...
- Java volatile详解
转自:http://www.cnblogs.com/dolphin0520/p/3920373.html volatile这个关键字可能很多朋友都听说过,或许也都用过.在Java 5之前,它是一个备受 ...
- VPS采用的几种常见技术(OVZ、Xen、KVM)介绍与对比
很多人看到同样配置的VPS价格相差很大,甚是不理解,其实VPS使用的虚拟技术种类有很多,如OpenVZ.Xen.KVM.Xen和HVM与PV. 在+XEN中pv是半虚拟化,hvm是全虚拟化,pv只能用 ...
- yield的理解
yield的理解:yield命令是异步两个阶段的分界线需要先对迭代器和生成器进行理解: 迭代器:是一种支持next()操作的对象.它包含一组元素,当执行next()时,返回其中一个元素:当所有元素都被 ...
- python 3.7 方向键乱码
原因是缺少安装包libreadline-dev 第一步安装libreadline-dev包:sudo apt-get install libreadline-dev(centos安装:yum -y i ...