【问题标题】:Access VBA dump recordset into an existing table将 VBA 转储记录集访问到现有表中
【发布时间】:2017-07-20 13:43:12
【问题描述】:

我有一个记录集和一个表格,两者的格式完全相同。将记录集中的所有内容转储到表中的语法是什么?这似乎是一个非常简单的过程,但不知何故我在网上找不到任何有用的信息。

Edit1:澄清一下,记录集是从表 A 中获得的,现在我想将它转储到表 B(它是空的)中。表 A 和 B 的格式完全相同。

Edit2:我在 Access 中工作。

这是我用来打开记录集的代码:

Set Table_B_rs = CurrentDb.OpenRecordset("Table_B")

我没有对记录集进行任何更改。

感谢您的帮助!

【问题讨论】:

    标签: vba ms-access


    【解决方案1】:

    您不是对记录集执行此操作,而是通过运行 INSERT INTO 查询对 SQL 执行此操作。

    CurrentDb.Execute "INSERT INTO TableB SELECT * FROM TableA " & _
                      "WHERE <same conditions you used to open the recordset>"
    

    如果没有条件,那就简单了

    CurrentDb.Execute "INSERT INTO Table_B SELECT * FROM Table_A"
    

    【讨论】:

    • 我必须先关闭记录集吗?
    • 取决于它的类型 - 对于dbOpenSnapshot 没关系,对于dbOpenDynaset 我会先关闭它。也许问题是:你对记录集做了什么?
    • 是的。似乎您的代码也有语法错误?我不擅长 SQL 对不起
    • 请编辑您的问题并在您打开记录集的位置添加代码(以及您如何使用它)。
    • 已添加。基本上我只想将表B中的所有记录移动到表A
    猜你喜欢
    • 2014-05-12
    • 1970-01-01
    • 1970-01-01
    • 2012-05-25
    • 1970-01-01
    • 2015-02-09
    • 1970-01-01
    • 1970-01-01
    • 2014-01-12
    相关资源
    最近更新 更多