DAO的问题,多软件通过DAO同时访问同一个数据表。

JacksonFox 2008-09-25 05:25:46
有好几个exe可能会同时访问某个数据表,进行更新或者添加操作。
通常情况是会有一个出错提示,the table is used by other application 这样的提示。
可是我最近遇到的情况是在Edit或者Update的时候,没有任何信息,程序就停在那里,既没有出错信息,程序也不往下进行。
停的地方一般是: recordset->AddNew()或者recordset->Edit()或者recordset->Update()。甚至有时候在recordset->MoveLast()也停住。
各位能给点建议或者看法吗?
...全文
60 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
内存泄漏 2008-09-25
  • 打赏
  • 举报
回复
为什么还用DAO啊?? 访问的是什么数据库???
JacksonFox 2008-09-25
  • 打赏
  • 举报
回复
有try,catch,但是没有转到try,catch, 如果转到try,catch,程序应该继续运行的。而且一停可以停个2天。。程序中的Timer事件还是能够响应。。
就好比两个Ontimer,一个进入处理没有退出来,另一个还在正常运行。
xsc2001 2008-09-25
  • 打赏
  • 举报
回复
dbf的数据库就有这个问题,不允许多个应用程序同时打开,打开肯定出错。其他数据库还可以共享读取。
程序停在那里,是不是你的程序里try,catch作了处理,再仔细看一下你的代码。
JacksonFox 2008-09-25
  • 打赏
  • 举报
回复
谢谢回复。。我估计会不会和DAO的版本有关?软件很老了,使用的是DBF数据表。
dirdirdir3 2008-09-25
  • 打赏
  • 举报
回复
exe之间还是同步一下,用semaphore来控制一下访问数据库把........

4,011

社区成员

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

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