访问两个数据库的视图

Posted

技术标签:

【中文标题】访问两个数据库的视图【英文标题】:View that accesses two databases 【发布时间】:2012-02-24 17:43:31 【问题描述】:

不知道该怎么做!我在同一个 SQL Server 2008 实例上有两个数据库

在 Database1 中,我有一个表,其中有一列包含 productID。

在 Database2 中,我有一个包含产品信息的表,我想根据 Database1 中的 productID 从该表中获取 SKU。

它让我头疼!希望你能帮忙!

非常感谢

【问题讨论】:

【参考方案1】:

使用fully qualified table name跨数据库访问表。

DatabaseName.Schema.TableName

【讨论】:

【参考方案2】:

加入它们,就好像它们在同一个数据库上一样,只需在查询前面添加数据库名称即可。 当然,您可能必须处理从另一个数据库访问一个数据库的权限

Select D1.productID, D2.productINfo
from Database1.SchemaName.Table D1 join Database2.SchemaName.Table D2 on D1.key=D2.key

【讨论】:

这应该是正确的答案并提供了一个示例,但是包含标准模式会更有用(根据下面的答案);通常它是 Database1.[dbo].Table1,除非架构不是 [dbo],当然。【参考方案3】:

也许是这样的:

TSQL: Create a view that accesses multiple databases

http://msdn.microsoft.com/en-us/library/ms187956.aspx

【讨论】:

As mentioned in one of your previous answers, it would be preferable 在此处包含答案的基本部分,并提供链接以供参考。

以上是关于访问两个数据库的视图的主要内容,如果未能解决你的问题,请参考以下文章

在两个用户控件/视图之间传递数据

数据库视图性能问题

Firebase iOS - 从其他视图控制器访问用户对象

访问选择查询

从 ASP.net Core 2 中的视图访问自定义 ApplicationUser 属性

无法通过视图访问组合键表,以便在该表中输入数据或分配正确的主键?