Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 如何在SQL Server中将一个数据库中的表与另一个数据库中的视图连接起来_Sql Server_Sql Server 2008 - Fatal编程技术网

Sql server 如何在SQL Server中将一个数据库中的表与另一个数据库中的视图连接起来

Sql server 如何在SQL Server中将一个数据库中的表与另一个数据库中的视图连接起来,sql-server,sql-server-2008,Sql Server,Sql Server 2008,我在数据库a中有一个名为tableaa的表,在数据库B中有viewViewB 我试图简单地将表与视图连接起来以编写查询。例如: SELECT * FROM TABLEA a, B.VIEWB b WHERE a.id = b.id 然而,它不起作用 从不同数据库连接表和视图的方法是什么?我应该创建同义词吗?…您可以使用三部分命名或创建同义词 三部分命名为: SELECT * FROM DatabaseA.Schema.TABLEA a join DatabaseB.Schema.VIEW

我在数据库
a
中有一个名为
tableaa
的表,在数据库
B
中有view
ViewB

我试图简单地将表与视图连接起来以编写查询。例如:

SELECT * 
FROM TABLEA a, B.VIEWB b 
WHERE a.id = b.id
然而,它不起作用


从不同数据库连接表和视图的方法是什么?我应该创建同义词吗?…

您可以使用三部分命名或创建同义词

三部分命名为:

SELECT * 
FROM DatabaseA.Schema.TABLEA a
join DatabaseB.Schema.VIEWB b ON a.id = b.id
创建同义词:

CREATE SYNONYM DatabaseB_ViewB
FOR DatabaseB.Schema.VIEWB;
GO

USE DatabaseA
GO

SELECT * 
FROM TABLEA a
join DatabaseB_ViewB b ON a.id = b.id

我想我更喜欢同义词法。我应该在DatabaseB中创建同义词吗?在要使用同义词的数据库中创建同义词。