不同数据库之间的共享表(SQL Server)

时间:2017-07-19 13:00:15

标签: sql-server database

数据库1

  • - X_Table

  • - Y_Table

  • - 的 Z_Table

的Database2

  • - A_Table

  • - B_Table

  • - 的 Z_Table

我有一个包含产品详细信息的表,我将它们用于2个独立的数据库。我可以将Z_Table作为共享表吗?

因为当我想更新Z_Table时,我必须为这两个数据库执行此操作。

**我知道我可以使用服务器端编码(查询)处理它。但是如果我能在Sql服务器上做到这一点那就不错了。

1 个答案:

答案 0 :(得分:2)

您实际上无法拥有共享表。但你可以使用同义词。这意味着您可以在Database1中使用Z_Table,在Database2中使用指向Database1中该表的同义词。

在Database2中,您可以像这样创建它。

CREATE SYNONYM Z_Table FOR Database1.Z_Table

然后在来自Database2的查询中,您只需通过名称引用它。您可以像对待任何其他表一样对待它。

您可以在此处详细了解同义词。 https://docs.microsoft.com/en-us/sql/relational-databases/synonyms/synonyms-database-engine