【问题标题】:How Do I Copy a table from one Access DB to another Access DB如何将表从一个 Access DB 复制到另一个 Access DB
【发布时间】:2009-08-02 14:05:31
【问题描述】:

我正在尝试自动化一个从主数据库创建辅助数据库的过程。两个数据库(MS Access)都包含一个表;辅助数据库中的表是主数据库中表的子集。

有没有一种简单的方法可以将记录集从一个数据库复制到另一个数据库?我正在使用 VBScript 和 ADO。

谢谢!

【问题讨论】:

  • 您有可用的 SQL 服务器吗?
  • 这是一次性工作吗?如果可以,请创建一个从基表到辅助表的链接表。然后代码会变得更简单。
  • 你不能直接复制文件吗?

标签: ms-access vbscript ado


【解决方案1】:

试试 CopyObject 方法:

DoCmd.CopyObject "DestinationDatabaseName", "NewName", acTable, "SourceTable"

【讨论】:

    【解决方案2】:

    您可以运行引用外部 Access 数据库文件(MDB、ACCDB 等)的插入查询。例如:

    strSQL = "INSERT INTO ServiceRecordInvoices " & _
        "( sriID, sriServiceRecordID, sriInvoiceDate, sriInvoiceNumber, " & _
                                    "sriDescription, sriInvoiceAmount ) " & _
        " IN '" & strDatabasePathandNameTo & "' " & _
        "SELECT srpID, srpServiceRecordID, srpInvoiceDate, srpInvoiceNumber, " & _
                                    "srpParts, srpPartsAmount " & _
        "FROM ServiceRecordParts IN '" & strDatabasePathandNameFrom & "';"
    

    注意两个字符串变量strDatabasePathandNameTostrDatabasePathandNameFrom。上面的动态 SQL 代码在 DAO 或 ADO 中都可以正常工作。

    如果两个表相同,那么您可以使用以下(未经测试):

    strSQL = "INSERT INTO ServiceRecordInvoices.* " & _
        " IN '" & strDatabasePathandNameTo & "' " & _
        "SELECT * " & _
        "FROM ServiceRecordParts IN '" & strDatabasePathandNameFrom & "';"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-12-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-27
      • 2020-01-29
      • 1970-01-01
      相关资源
      最近更新 更多