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

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

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

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

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

非常感谢

【问题讨论】:

    标签: sql sql-server sql-server-2008


    【解决方案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】:

      【讨论】:

      猜你喜欢
      • 2011-10-26
      • 1970-01-01
      • 2011-01-09
      • 1970-01-01
      • 1970-01-01
      • 2010-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多