两个前台同时操作一张表...

computerstarveling 2003-08-22 10:20:01
一个前台在操作时打开了A表,试图往A表添加一条记录,而且这被写在一个事务里,但是添加失败,程序就挂在那里了,这时,另一个前台进如程序,在窗体显示的时候打开A表,这时,A表就打不开了,处于等待状态,要到另一个程序reset后,本程序才能继续运行,这是为什么,应该如何做?(我用的是ADO那套组件),谢谢!
...全文
32 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
vchoushen6 2003-08-27
  • 打赏
  • 举报
回复
既然是挂起了那就是写时的锁还没有解开啊,后面的用户当然不能做任何操作了。
你检查一下你的程序,有关事务提交这一部分,看是否逻辑上不对,也可以跟踪一下,看为什么程序会挂起。
computerstarveling 2003-08-27
  • 打赏
  • 举报
回复
有rollback啊.
梦想家大魔王 2003-08-23
  • 打赏
  • 举报
回复
第二个程序打开表失败肯定是因为你第一个程序的事务中把表锁定了,在操作失败后没有解锁。看看你的事务处理中有没有rollback?
test7979 2003-08-23
  • 打赏
  • 举报
回复
<但是添加失败,程序就挂在那里了>

什么叫做挂在那里了,是你的程序连事务都没回滚吗?

如果添加失败,回滚事务,这样另一个程序就可以打开这个表了
computerstarveling 2003-08-23
  • 打赏
  • 举报
回复
锁定机制,那锁的类型应该是什么,还是在程序里控制?
Gorgee 2003-08-22
  • 打赏
  • 举报
回复
表锁定!
可以在错误处理中回滚失败事务,释放锁定资源
Shiyl 2003-08-22
  • 打赏
  • 举报
回复
你试着把顺序反一下,先显示A表再进行添加记录的操作呢?
computerstarveling 2003-08-22
  • 打赏
  • 举报
回复
为何没人回答,我真的很急,再谢各位一次!!!
tianyc 2003-08-22
  • 打赏
  • 举报
回复
如果你你事物处理程序里面有出错回滚的处理的话,应该不会出现你所说问题。
lemon_wei 2003-08-22
  • 打赏
  • 举报
回复
要用销定机制

2,496

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧