首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有任何方法仅列出使用链接服务器访问数据库的方法?

是否有任何方法仅列出使用链接服务器访问数据库的方法?
EN

Stack Overflow用户
提问于 2019-07-02 11:19:15
回答 1查看 71关注 0票数 0

当我登录sql server时。我看到许多数据库,但我没有访问某些数据库。所以我只想列出使用linkedname访问数据库的列表。

代码语言:javascript
复制
select name FROM sys.sysdatabases WHERE HAS_DBACCESS(name) = 1

我在本地运行这段代码,它正在工作。但我想运行这个代码

代码语言:javascript
复制
select name FROM [linkedname].sys.sysdatabases WHERE HAS_DBACCESS(name) = 1

它不起作用。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-07-02 11:21:47

[linkedname].sys.sysdatabases将引用数据库 linkedname,而不是服务器。

您需要使用4部分命名LinkedServerName.DatabaseName.SchemaName.ObjectName。对于您的例子,这将是:[linkedname].master.sys.sysdatabases

但是,因为(正如Dan所指出的)这是一个链接查询,所以HAS_DBACCESS将在本地运行。您可以通过使用OPENQUERY来解决这个问题。

代码语言:javascript
复制
SELECT [name]
FROM OPENQUERY(linkedname,N'SELECT [name] FROM master.sys.sysdatabases WHERE HAS_DBACCESS(name) = 1;'); 
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56851300

复制
相关文章

相似问题

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