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)的更多相关文章

  1. ODAC(V9.5.15) 学习笔记(四)TCustomDADataSet(1)

    1.SQL相关 名称 类型 说明 BaseSQL String 没有被AddWhere.SetOrderBy.FilterSQL等方法处理过的原始SQL语句 FinalSQL String 被AddW ...

  2. ODAC(V9.5.15) 学习笔记(四)TCustomDADataSet(5)

    7.其他 名称 类型 说明 FindKey 类似于BDE的相关功能,在当前数据集中查找指定的记录 FindNearest 移动游标到最符合查找要求的第一条记录处 FindMacro 当前数据集中是否存 ...

  3. ODAC(V9.5.15) 学习笔记(四)TCustomDADataSet(3)

    4. 主从表关系 名称 类型 说明 MasterSource 从表对应于主表的DataSource组件 DetailFields 从表中对应于主表字段的外键字段 MasterFields 主表中关联从 ...

  4. ODAC(V9.5.15) 学习笔记(四)TCustomDADataSet(2)

    2.连接相关 名称 类型 说明 Connection 指向一个数据库连接对象 Disconnected 设置为True将在数据库关闭后继续保持数据集的开启状态. 3. 数据获取 名称 类型 说明 Fe ...

  5. ODAC(V9.5.15) 学习笔记(四)TOraQuery (1)

    TOraQuery是ODAC中常用的一个组件,其继承关系如下: TDataSet ---TMemDataSet ---TCustomDADataSet ---TOraDataSet ---TCusto ...

  6. ODAC(V9.5.15) 学习笔记(四)TOraDataSet

    名称 类型 说明 SequenceMode TSequenceMode ODAC可以直接利用Oracle中的序列对象为表的主键赋值,从而实现主键自动增长的功能.该属性决定了在什么场合下使用序列: sm ...

  7. ODAC(V9.5.15) 学习笔记(四)TMemDataSet (1)

    所有的数据集类组件都是从TMemDataSet继承下来的,该组件实现了内存中对数据的管理,其主要的属性.方法和事件如下. 1.数据更新 名称 类型 说明 CachedUpdates Boolean 数 ...

  8. ODAC(V9.5.15) 学习笔记(十四)TCRBatchMove

    名称 类型 说明 AbortOnKeyViol Boolean 在处理数据时,如果发生主键冲突或主键校验失败时,是否中断 AbortOnProblem Boolean 发生问题时是否中断 Change ...

  9. ODAC(V9.5.15) 学习笔记(四)TMemDataSet (3)

    3.其他 名称 类型 说明 GetBlob TBlob 按照字段名获取当前数据集中某个Blob类型的字段值,并以TBlob对象形式返回 Prepared Boolean 检查Query的SQL是否已准 ...

随机推荐

  1. bootstrap ui

    附加访问地址:http://www.bootcss.com/p/jquery-ui-bootstrap/

  2. Linux 安装Eclipse

    安装Eclipse 场景: 我用的是笔记本(Windows系统),我在笔记本上安装了虚拟机,在 虚拟机中安装了Linux系统,使用的镜像是:CentOS-6.6-x86_64-bin-DVD1.iso ...

  3. 1.display:flex布局笔记

    /*display:flex布局方式主要运用于垂直居中的效果*/ 一.Flex译为Flexible Box(弹性盒子),任何一个容器都可以指定为Flex布局 注:设置为Flex布局之后,子元素的flo ...

  4. laravel使用过程总结

    docker-compose exec -T workspace php artisan route:list  //查看路由 laravel数据存入session,会出现Session store ...

  5. C#深入研究ArrayList动态数组自动扩容原理

    1 void Test1() { ArrayList arrayList = new ArrayList(); ; ; i < length; i++) { arrayList.Add(&quo ...

  6. html5-css综合练习

    div{    width: 600px;    height: 800px;    padding: 40px;    font-size: 12px;    line-height: 25px;  ...

  7. Centos搭建Seafile个人网盘

    1.安装依赖环境 yum install python python-setuptools python-imaging python-ldap python-memcached MySQL-pyth ...

  8. QQ项目(续)

    1.项目查找好友的原理 sql:select * from qquser where account in(select friendAccount from friend where userAcc ...

  9. 为了好好看球,学霸们用深度学习重建整个比赛3D全息图

    http://mp.ofweek.com/vr/a745673021206 周四晚上11点,万众瞩目的世界杯终于开踢了,虽然意大利.荷兰.智利.中国(手动滑稽)等强队没能进入本届世界杯,但C罗梅西谁主 ...

  10. Python-OpenCV基本操作cv2

    1.图片加载.显示和保存 import cv2 # 生成图片 img = cv2.imread("1.jpg") # 生成灰色图片 imgGrey = cv2.imread(&qu ...