如何查询位于不同数据库中的表?

时间:2011-04-24 21:32:09

标签: sql-server tsql

我最初的问题是关于是否从应用程序数据库中保留单独的ASPNETDB.MDF,还是将所有表合并到一个数据库中。检查以前的问题/答案,我了解到这取决于会员数据是否会在多个应用程序之间共享。

现在,我的问题是这个。如果我决定将ASPNETDB.MDF与应用程序数据库分开,如何查询位于2个不同数据库中的2个表?

感谢您的帮助。

1 个答案:

答案 0 :(得分:13)

如果在同一数据库服务器上有两个数据库/模式,则可以使用以下语法跨数据库进行查询:

select *
from database1.dbo.table1 t1 join database2.dbo.table2 t2 on
  t1.field1 = t2.field2

如果它们位于物理上独立的服务器上,您仍然可以进行跨数据库查询,但您需要首先链接服务器:

http://msdn.microsoft.com/en-us/library/aa213778(v=sql.80).aspx