问题一:
针对帮助中《工作流和并发冲突》一节内容请教:
Dim r As
Row =
Tables("表A").Current
r.DataRow.Load()
'重新加载此行的数据
If
r.IsNull("标记") Then
Dim cmd as New SQLCommand
cmd.CommandText =
"Update {表A} Set
标记 = -1 Where 标记 Is Null And [_Identify] = "
& r("_Identify")
由于网络延迟等原因,会不会出现两个或者多人同时作出标记为空的判断,同时进行操作。有没有这种可能性?如果有的话,哪怕是再低的概率,对于数据管理来说也是不允许的。
是不是更应该从业务流程的编排上尽量避免多人同时操作的情况?
问题二:
如果是网络作业程序的开发,sql是不是更具有速度效率的优势,应该尽量使用,比如说,以下这两段代码,sql的代码的更好,还是两者都一样?
Dim r As Row = Tables("表A").Current
r.DataRow.Load() '重新加载此行的数据
If r.IsNull("标记") Then
Dim cmd as New SQLCommand
cmd.CommandText = "Update {表A} Set 标记 = -1 Where 标记 Is Null And [_Identify] = " & r("_Identify")
end if
Dim r As Row = Tables("表A").Current
r.DataRow.Load() '重新加载此行的数据
If r.IsNull("标记") Then
r("标记") = -1
r.save()
end if
在下没有编程基础,问题可能看起来比较粗浅的低级,还请各位老师不吝赐教,谢谢!