请教多线程访问数据库的问题

天高云淡 2004-10-29 12:35:44
我使用VC+ACCESS+ADO写了个多线程访问数据库的应用,每个线程

都有独立的和数据库的连接,且每个线只对数据库中的一张表访问

互不干扰(例如:A线程只访问数据库D中ATable,B线程只访问数据

库D中BTable,……)可仍然会在添加记录时发生数据已锁定的报告。

我需要对每个线程实现互斥吗,怎样实现呢?
...全文
136 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
天高云淡 2004-10-31
  • 打赏
  • 举报
回复
to tabby

我用多个工作线程负责采集数据后保存到数据库的不同的表内,

不明白你说的用别的数据库就不用自己写多线程访问数据库的代码的意思.

我用多线程是数据采集的需要,好像和用什么数据库没有关系.

如果可以的话请指教,谢谢!
内存泄漏 2004-10-30
  • 打赏
  • 举报
回复
把recordset.open函数第四个参数改成adLockOptimistic就不会出现这种情况了。。。。。。

access本身不对多线程数据库操作提供支持,你用别的数据库就不用自己写多线程访问数据库的代码了。。。
Kudeet 2004-10-30
  • 打赏
  • 举报
回复
ACCESS是不支持多线程的
oncsdn 2004-10-30
  • 打赏
  • 举报
回复
SQL Server
天高云淡 2004-10-30
  • 打赏
  • 举报
回复

可是我的程序大多数情况下运行正常,只是偶尔发生这种异常.
现在我捕捉到异常后不显示,程序运行一直没有问题.
shamuming 2004-10-30
  • 打赏
  • 举报
回复
同意楼上的
GameWeaverDummy 2004-10-29
  • 打赏
  • 举报
回复
我也碰过这种情况
oyljerry 2004-10-29
  • 打赏
  • 举报
回复
多线程不能同时访问access数据库吧,即使表不同
fisker0303 2004-10-29
  • 打赏
  • 举报
回复
up~
天高云淡 2004-10-29
  • 打赏
  • 举报
回复
怎么会造成成“脏数据”呢,两个线程不可能同时访问一张表里的数据呀?
danyueer 2004-10-29
  • 打赏
  • 举报
回复
需要进行互斥,否则可能会造成“脏数据”,可以采用关键段来实现
laker_tmj 2004-10-29
  • 打赏
  • 举报
回复
我認為不需要实现互斥

4,011

社区成员

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

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