如何将数据从服务器上的Access DB中的表复制到另一个Access DB

时间:2016-04-12 09:44:00

标签: sql vbscript ms-access-2010 ado

我知道已经提出了类似的问题。由于答案超过6年,我开始了一个新的主题。

我有一个Access DB和该DB的副本。计划是将数据写入副本,然后自动将新数据写入原始数据。所以基本上两个DB都是一样的。

我在这里找到并回答:How Do I Copy a table from one Access DB to another Access DB。现在我想根据我的目的调整这个但是我失败了。

我已附加SQL字符串

strSQL = "INSERT INTO [maintblKeyFinancials].* " & _
    "IN '" & destination_DB & "' " & _
    "SELECT * FROM [maintblKeyFinancials] " & _
    " WHERE [Company_ID] = " & identifier & _
    " AND [Reference_year] = " & Chr$(34) & Year & Chr$(34) & ";"

是的,[Reference_year]是一个字符串。我还附上了输出

INSERT INTO [maintblKeyFinancials].* IN 'C:\destination.accdb'  
SELECT * FROM [maintblKeyFinancials] IN 'C:\source.accdb'  
WHERE [Company_ID] = 899 AND [Reference_year] = "2015";

当我执行字符串时,我得到“查询中的语法错误。不完整查询子句”。我不知道该纠正什么。希望您能够帮助我。 THX!

2 个答案:

答案 0 :(得分:1)

INSERT INTO [maintblKeyFinancials].*

最后删除.*,这会出现语法错误。它要么是

INSERT INTO [maintblKeyFinancials] (column1, column2)
SELECT column1, column2 FROM ...

或如果列完全相同

INSERT INTO [maintblKeyFinancials]
SELECT * FROM ...

答案 1 :(得分:-1)

写[YourServer]。[yourSchema]。[YourTable]

SELECT * FROM [YourServer]。[YourSchema]。[maintblKeyFinancials]