我想获得存储在SQL Server实例中的数据库列表。我需要以最少的权限这样做(即我只有权阅读它们)。如果有必要,我可以接受只返回用户有权查看的数据库列表。
我正在尝试避免调用 sp_databases 存储过程,因为它不会为非管理员用户返回任何值。
有什么想法吗?
谢谢, 阿萨弗。
答案 0 :(得分:5)
即使是访客也可以阅读sys.databases
:
select name from sys.databases
应该为您提供服务器上可见的数据库列表。
您可以通过在“登录属性”对话框中创建“用户映射”来使数据库可见。各种服务器角色的成员可以查看所有数据库,例如“sysadmin”和“bulkadmin”。