首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用sys.columns列连接sys.synonyms和object_id表

如何使用sys.columns列连接sys.synonyms和object_id表
EN

Database Administration用户
提问于 2018-07-25 04:53:29
回答 1查看 646关注 0票数 0

我使用了两台服务器,即服务器A(本地服务器)和服务器B(远程服务器)。我已经在Server中为Server表创建了同义词。我使用以下语法创建了同义词。

代码语言:javascript
复制
CREATE SYNONYM RemoteServerATable FOR Server B .[database_name].[schema_name].object_name

我尝试使用下面的查询连接两个表sys.columns和sys.synonyms

代码语言:javascript
复制
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和硬编码整数值连接了两个表。我使用下面的查询获得了这个值

代码语言:javascript
复制
exec ('select object_id(''[Server B DatabaseName].[Server B SchemaName].[Server B ObjectName]'') as object_id') at [Server B]

我没有得到正确的列信息。请建议以某种方式连接两个表并获取列信息。

EN

回答 1

Database Administration用户

发布于 2018-07-25 05:43:10

object_id()不适用于远程数据库。

文件说明

对于未在sys.objects目录视图中找到的对象,请通过查询适当的目录视图获得对象标识号。

为查询要求提供答案的SQL是这里

票数 2
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/213145

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档