DataSnap(MIDAS)三层架构编程中,DataSetProvider的Option属性

来源:互联网 发布:ggg软件下载 编辑:程序博客网 时间:2024/05/16 18:01

                 看看远端数据模块里的DataSetProvider的Option属性是否设置正确!Provider控件的Options

属性值是一个集合,用于设置有关打包和传递的选项,像显示哪些字段、允许哪种更新方式等等。

 

1.             poFetchBlobsOnDemand:若包含此项,则表示数据包中不包括BLOB字段。不过,如果客户端的

TclientDataSet控件的FetchOnDemand属性设为True,那么客户端还是能自动地请求这些数据值;否 则,

客户端应用程序必须使用客户数据集的FetchBlobs方法来检索BOLB数据。

2.           poFetchDetailsOnDemand: 当用嵌套表的方式处理Master/Detail关系时,这里的Provider表示

主 /明细表中的主表。若包含此项,则Detail表中的字段将不会放入包中。不过,如果客户端的

TclientDataSet控件的FetchOnDemand属性为True;那么客户端还是能自动的请求这些数据;否则,要显

式调用FetchDetails方法。

3.           poIncFieldProps:若包含此项,则表示数据包中将包含下列字段属性:Alignment、MinValue、

DisplayLabel、DisplayWidth、Visible、DidplayFormat、MaxValue、EditFormat、Currency、EditMask、

DisplayValues等。

4.           poCascadeDeletes:当用嵌套表的方式处理Master/Detail关系时,这里的Provider表示主/明细

表中的主表。若包含此项,则当主表中的记录被删除时,明细表中相应的记录将自动地被删除。

注意:要使用这个选项,数据库服务器需要建立参照完整性:也就是,在数据库中对主细表建立主外键关

系,并在 “关系”页选中“级联更新相关字段”、“级联删除相关记录”。

5.           poCascadeUpdates:当用嵌套表的方式处理Master/Detail关系时,这里的Provider表示主/明细

表中的主表。若包含此项,则当主表中主键字段的值改变时,明细表中相应的记录将自动地被更新。

注意:要使用这个选项,数据库服务器需要建立参照完整性。参照4。

6.           poReadOnly:若包含此项,则表示不允许客户端数据集向Provider申请更新数据。

7.           poAllowMultiRecordUpdates:表示一个单一的更新将同时更新关联的许多表的记录,这有可能是

通过触发、参照完整性或自定义的SQL语句来实现的。

8.           poDisableEdits:若包含此项,则表示不允许客户端更新已经存在的数据值,否则,将触发异常。

9.           poDisableInserts:若包含此项,则表示不允许客户端插入一个新的记录,否则,将触发异常。

10.       poNoReset:若包含此项,则表示在提供数据前,不允许客户端将光标指定在第一条记录。

11.       poAutoRefresh:若包含此项,则表示Provider将用当前的记录刷新客户端的数据集,而不管它是否

已经申请更新。(这个功能好像并没有实现)

12.       poPropogateChanges:若包含此项,则表示服务器对记录的更新将返回给客户端并反映到客户端数

据集中。

13.       poAllowCommandText:若包含此项,则表示客户端可以重载相关数据集的SQL语句、表的名字或

存储过程。

 

 

 

原创粉丝点击