如何在VBA中一次输入多个记录(Microsoft Access)

时间:2015-12-19 00:21:03

标签: sql vba excel-vba ms-access excel

我正在尝试从.txt文件中将数千条记录输入Access数据库。目前,我正在循环记录并一次添加一个。有时这可能需要30多分钟。有没有办法将记录像数组一样加载到内存中,然后在例程结束时执行它并立即输入所有记录?

有这个线程,但我无法让DAO工作,当我尝试在参考库中选择Microsoft DAO 3.6对象库时,我收到.dll错误。 VBA to insert many records into access DB fast

由于

编辑:如果在MS Access中无法做到这一点,可以使用MySQL或其他数据库吗?

1 个答案:

答案 0 :(得分:0)

您需要引用 Microsoft Office 15.0 Access数据库引擎对象库。这是Access的当前和默认引擎。在Access中,ADODB仅在特殊情况下使用。

然后,您可以将文本文件作为表链接并运行追加查询以将记录复制到表中,或者您可以逐行读取文件,为每条记录调用AddNew ... Update。或者您可以按@Parfait提到的DoCmd.TransferText运行或使用导入向导。