使用ADO做出货明细表。用DBGRID。一台机数据修改时,其它机器无法查询(200)

  • 主题发起人 主题发起人 大大懒虫
  • 开始时间 开始时间

大大懒虫

Unregistered / Unconfirmed
GUEST, unregistred user!
数据库是:SQLSERVER2000 。当出货的那个FORM进行修改数据时,其它机器无法查询与出货相关的数据。 有同事说因为出货那个FORM。是因为出货明细表的数据处理使用的是DBGRID。数据锁定为独占。所以会出这种情况。但我记得,我以前做相类似的东西时,也是用DBGRID。请各位帮助解决@.@
 
查询下 数据库 里面是否有这个记录~·应该不会锁定 除非 你程序做了锁定的操作
 
不是查询结果问题。在有人做出货单的数据添加/修改时,任何一台机查询时会出现超时已过期的错误。如果没做做出货单数据修改的话就没有任何问题。
 
ADO locktype [ltOptimistic]
 
你是不是加了事务
 
是增加了事务。有问题吗
 
保存时,就用数据COMMIT,取消就回滚。
 
是事务的问题,事务执行时出错而把表锁上了。
 
没有出错呀
 
这就是事务问题,将整个表锁信,其它查询,更改均无法操作
 
怎么解决
 
是不是发生死锁,或者将整个表锁住,用SQL探测一下。
 
但没有事务的情况下就没有问题
 
在事物过程中禁止或者延期其他操作,待事务结束以后再进行其他查询操作
 
你是不是用的table控件?
 
锁!事务问题!
 
觉得使用事务不要一开始置table为edit状态时就用,应该是提交前用,或提交不成功就回衮。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
872
DelphiTeacher的专栏
D
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
840
DelphiTeacher的专栏
D
后退
顶部