将表导出到另一个访问数据库

时间:2012-10-10 07:10:13

标签: vba ms-access ms-access-2007

我的Access数据库中有一个查询,另一个Access数据库中的结构完全相同。 我需要编写一个脚本,将查询中的所有条目添加到表中。我怎么能这样做?

Extarnal Data -> Export -> Access Database的任务和功能之间的区别在于我需要添加新条目并保存旧条目,但此工具只能替换旧条目到新的。

2 个答案:

答案 0 :(得分:4)

  1. 在源数据库中创建一个到目标表的链接表。
  2. 然后,使用追加查询将查询中的结果插入到链接表中。
  3. 编辑:您也可以使用单个SQL语句执行此操作:

    INSERT INTO DestinationTable (Field1, Field2)
    IN "C:\path\to\file.accdb"
    SELECT Field1,Field2
    FROM SourceTable
    

    但是the reference说:

      

    为了提高性能和易用性,请使用链接表而不是IN。

答案 1 :(得分:0)

对于想要在VBA中链接表的任何人......

strDbName = "C:\FolderPath\DatabaseName.mdb"
strLinkTbl = "tblNameOfTableYouWantToLink"
strNameTbl = "tblWhatYouWantToNameIt" ' This can be the actual 
                                      ' table name or something different

DoCmd.TransferDatabase acLink, "Microsoft Access", strDbName, _
    acTable, strLinkTbl, strNameTbl

然后你的SQL看起来像:

CurrentDb.Execute "INSERT INTO " & strNameTbl _
   & " (Field1, Field) SELECT Field1, Field2 FROM SourceTable
相关问题