多用户下操作的问题 (50分)

雪飞

Unregistered / Unconfirmed
GUEST, unregistred user!

A,B用户同时打开一窗体

oncreate事件. adoquery1.sql.add('select * from table');

B用户修改了其中某一条记录了。

但这时在A用户显示还没有变化,还是原来的值。
此时当A用户再去修改或删除刚才B修改的那条记录。就会出错。
提示
无法定位或更新。。。

怎样让A用户在修改的或者删除的时候,得到最新的值。
不要用active:=false, active:=True;
这样频率高受不了.
adoquery有没有设置这个属性。
 
用触发器应该可以。
 
提这样的问题应该说清楚后台用的什么数据库
还有多用户操作时应该先对数据表或记录进行锁定(加锁机制)
那种ACTIVE方法是解决不了问题的
 
在C/s程序更新数据时,建议用sql语句,而锁交给后台数据库处理。
不过这样做工作量要大一些
 
顶部