JOIN查询中的外部表锁定外部数据库(MS-ACCESS)

时间:2017-08-01 10:15:59

标签: sql multithreading ms-access ado

我有两个mdb文件:

  • 每个文档一个(请参阅下面的查询中的doc1.mdb:DocDB)
  • 所有文档(doc1,doc2等等)使用的一个共享(cost.mdb)

以下是仅在多进程环境中给我一些困难的查询:

 UPDATE T_Relation_Cost_T As DocDB  
 INNER JOIN [C:\cost.mdb].[T_Cost_By_m2_T] As CostDB
 ON [DocDB].[F_GenericCostSupplierID_F]= [CostDB].[F_CostSupplierID_F]  
 SET [DocDB].[F_FinishGroupID_F] = 'XXXX'   
 WHERE([DocDB].[F_CostTabID_F] = 2)

此示例简化了此查询。

在一个过程中执行时:此查询有效 在多进程(两个exe)中执行时:此查询不起作用,因为当两个exe同时执行查询时,cost.mdb上会出现 lock

ADO报告的错误是 cost.mdb 无法访问。

我无法在SQL Server这个cost.mdb数据库或更多的数据库上移动 我正在寻找想法:LockType,Cursor,Recordset属性但没有线索 我应该在cost.mdb中使用 UPDATE 中的 SELECT ,在第二个查询中单独使用doc1.mdb来避免锁定吗?

0 个答案:

没有答案