我使用了两台服务器,即服务器A(本地服务器)和服务器B(远程服务器)。我已经在Server中为Server表创建了同义词。我使用以下语法创建了同义词。
CREATE SYNONYM RemoteServerATable FOR Server B .[database_name].[schema_name].object_name我尝试使用下面的查询连接两个表sys.columns和sys.synonyms
select s.name as [SynonymName], c.name as [ColumnName], c.object_id from [Server B].[DatabaseName].sys.columns c inner join sys.synonyms s on s.name = 'RemoteServerATable' and c.object_id = 1973582069我使用另一个服务器中sys.columns表的sys.columns和硬编码整数值连接了两个表。我使用下面的查询获得了这个值
exec ('select object_id(''[Server B DatabaseName].[Server B SchemaName].[Server B ObjectName]'') as object_id') at [Server B]我没有得到正确的列信息。请建议以某种方式连接两个表并获取列信息。
https://dba.stackexchange.com/questions/213145
复制相似问题