点击或拖拽改变大小

DbServer.ConcurrencyControl 属性

X#
一个常量,标识此数据服务的自动并发控制模式,确定何时以及如何锁定和释放记录:

命名空间:  XSharp.VO.SDK
程序集:  XSharp.VORDDClasses (在 XSharp.VORDDClasses.dll 中) 版本:2.22 GA
语法
 VIRTUAL PROPERTY ConcurrencyControl AS USUAL GET SET 
查看代码

属性值

类型:__Usual
一个常量,标识此数据服务的自动并发控制模式,确定何时以及如何锁定和释放记录:
备注
以下常量之一,标识此数据服务的自动并发控制模式,确定何时以及如何锁定和释放记录:
常量描述
CCNONE数据服务不提供自动记录锁定;应用程序需要显式进行所有锁定。
CCOPTIMISTIC 除了追加时,记录刚刚追加时会被锁定, 并且只有在移出记录或显式调用 DataServer 或 DBServer Unlock()方法时才会释放锁定。 对于所有其他记录,在进行任何更新之前,记录会从磁盘重新读取。这是默认设置。
CCSTABLE窗口所在的记录始终保持锁定。请注意,当处于浏览视图时,光标所在的行表示当前记录。
CCREPEATABLE所有已读取的记录都保持锁定。用户可以保证在返回先前查看的数据时,它们未被更改。
CCFILE 服务提供的整个记录集中的所有记录在整个过程中都被锁定。 这对于与服务的所有记录关联的窗口来说并不实用,因为这相当于文件锁定。 它旨在与方法 DBServer:SetSelectiveRelation() 一起使用。
示例
此示例设置 Sales:Init() 方法以接受服务的打开模式作为参数。 然后,使用 CCNONE 打开 oDBSales 服务,指示使用此服务的任何应用程序必须提供显式锁定的代码:
X#
1CLASS Sales INHERIT DBServer
2...
3METHOD Init(kOpenMode) CLASS Sales
4...
5SELF:ConcurrencyControl := kOpenMode
6FUNCTION CreateSales()
7LOCAL oDBSales AS Sales
8oDBSales := Sales{CCNONE}
9...
参见