C ++ Builder - 多线程数据库更新

时间:2012-10-08 08:56:49

标签: c++ ms-access ado c++builder vcl

我在C ++ Builder中使用ADO组件,我需要向MS Access数据库添加大约200 000条记录。如果我逐个添加这些记录需要花费很多时间,所以我想使用线程。每个线程都会创建一个TADOTable,连接到数据库并插入自己的行。但是,在运行应用程序时,它甚至比只使用一个线程更慢!

那么,该怎么做?我需要向Access数据库添加许多记录,但希望避免逐个插入。代码很有用。

谢谢。

1 个答案:

答案 0 :(得分:-1)

首先,多线程不会提高插入速度。由于上下文切换和填充,它会降低速度。您需要的是批量插入的方式,即在单个事务中发送多行

尝试在acesss表中搜索批量插入。那里有很多信息。