如何在management studio对象资源管理器中显示过滤器数据库

时间:2013-01-22 09:42:07

标签: sql-server-2008-r2 ssms management-studio-express

我的数据库托管在共享主机中。我在Management Studio Express中远程连接数据库。每当我尝试连接到sqlserver实例时,它都会显示该服务器实例中托管的所有数据库。这很烦人,无法一直从其他用户的400数据库中找出你的数据库。

有没有办法将数据库列表过滤到我赢得或获得许可的人?我不想看到我没有权限或我不拥有的数据库。

请记住,我的数据库托管在共享托管中,而作为用户,我的权限有限。

2 个答案:

答案 0 :(得分:1)

我研究了一个类似的问题,我发现的唯一可行的方法是有点hackish,但在这种情况下它可能对你有用。如果您(或共享主机的管理员)能够使您的登录成为数据库的DBO,然后又是DENY VIEW到所有数据库以进行登录,那么您应该只看到您的数据库登录在您连接时拥有。所以t-sql将是:

`使用AdventureWorks2008R2

更改DATABASE上的授权:: AdventureWorks2008R2到TestLogin

USE MASTER

DENY查看任何数据库到TestLogin`

不确定这是否适合您的方案,并且绝对不是说这是最佳做法,但也许有帮助!

答案 1 :(得分:1)

我已经在SSMS的SSMSBoost加载项中为此问题创建了解决方案(我是该加载项的开发人员)。 工具栏上有一个特殊的“智能连接开关”组合框,您可以配置该组合框以显示自己喜欢的连接(首选连接),还可以显示所有本地数据库,但仅显示那些可以访问的本地数据库。