gpt4 book ai didi

sql-server - VBA 将整个 ADODB.Recordset 插入表中

转载 作者:行者123 更新时间:2023-12-05 02:21:06 24 4
gpt4 key购买 nike

我正在尝试在 sql server(一些 DWH)上运行 SQL 查询,然后将结果插入 Access 表(使用 VBA)。
我是通过使用 ADODB.Connection、ADODB.Command 和 ADODB.Recordset 来完成的。此时我在 Recordset 中有了结果,我想知道如何在不循环的情况下将它插入表中。
我试过了:

If Not (Rs.EOF And Rs.BOF) Then  
Rs.MoveFirst
Do Until Rs.EOF = True
DoCmd.RunSQL ("INSERT INTO Table (F1, F2) VALUES ( " & rs![F1] & ", " & rs[F2] & ")"
Rs.MoveNext
Loop
End If

但是 Recordset 可能有超过 100k 行。所以使用这种方法插入它需要很长时间。

另一种非常快速的方法是打开一个新的 Excel 工作簿,将其粘贴到工作表中,然后导入。但我想避免它。还有其他办法吗?

--------编辑------------
对不起大家。我的错。我在链接时强制使用 VBA 解决方案,它是完美的。谢谢 !

最佳答案

I was wondering if there is any as fast way which use Access resources only.

如前所述,链接 SQL 表,然后创建一个简单的追加查询,该查询从链接表中读取并写入您的 Access 表,您就完成了.

关于sql-server - VBA 将整个 ADODB.Recordset 插入表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36185571/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com