2016-04-27 37 views
0

我在Access中链接了一个SQL表。我想知道如何改变链接表对象来引用具有相同设计但不同名称的另一个表。例如,我链接Table1并使用它创建表单,现在需要将其更改为Table2。在Access 2013中修改链接的SQL表名

似乎并没有简单的方法来做到这一点。

  • 设计视图中的表格说明包含所有链接的数据库和表格信息,但它不可编辑。
  • 使用链接表管理器,我可以更改表来自的数据库,但两个数据库中的表都需要具有相同的名称。
  • 我可以使用Select * From Table1创建查询并将其更改为Select * From Table2以切换表格,但如果不需要,我不想使用替代方法。

回答

2

删除链接表,并使用DoCmd.TransferDatabase重新创建具有不同名称的链接:

DoCmd.TransferDatabase acLink, "ODBC", your_ODBC_String, acTable, _ 
    "schema.source_table", "target_table" 

您可以从现有的链接表查找your_ODBC_String

如果需要,请添加StoreLogin:=True参数。

+0

那么,在一个标准模块中插入一个公共子类,我建议。如何使用它取决于这是一次性操作还是定期执行。 – Andre

+0

它完美的工作,谢谢!对于将来阅读此答案的任何人,我注意到有一种表单将采用什么形式作为它的RecordSource。它将采用一个具有相同名称的新表,然后它将采用重命名的表格。例如,如果我有一个Access Table'Table1'并将其重命名为'TableA',表单将切换到'TableA'。但是,如果我有'TableA'(最初的Table1)并添加一个名为'Table1'的新表,表单将切换到新的'Table1'。 – jjjjjjjjjjj