小编典典

数据库[dbName]无法访问。(对象浏览器)

sql

关于使用SQL Server 2008 R2,我有一个问题。

我最近在我的计算机上遇到问题,因此必须重新启动Windows,并且必须将一个用户的权限授予另一用户(使用属性中的安全功能)。最初授予权限时,它通过“访问被拒绝”消息。

经过大量研究,它停止产生此错误(我也需要授予权限的用户不可用),然后导致另一个问题发生,但这一次是在SQL Server中。它产生此消息;

数据库[dbName]无法访问。(对象浏览器)

当我尝试选择下拉选项以查看SQL Server中数据库的表和存储过程列表时,会发生此错误。我在以下链接中找到了对此的解释;

http://www.microsoft.com/products/ee/transform.aspx?ProdName=Microsoft+SQL+Server&ProdVer=10.50.1617&EvtSrc=MSSQLServer&EvtID=916

然后我尝试像这样实现;

 USE msdb;
 GO
 GRANT CONNECT TO [DBName\MyName] ;

 CREATE DATABASE [DBNAME] ON PRIMARY

使用我创建的脚本(幸运的是,在出现此问题之前),它通过大量消息进行了处理;

消息15151,级别16,状态1,行1
找不到用户’DBName \ MyName’,因为它不存在或您没有权限。
消息262,级别14,状态1,第2
行在数据库’master’中拒绝了CREATE DATABASE权限。
消息5011,级别14,状态9,第1行
用户没有权限更改数据库’DBName’,该数据库不存在,或者该数据库未处于允许访问检查的状态。
讯息5069,第16级,状态1,第1行…

经过这一系列的错误之后,我变得很困惑,因此,如果有人可以就如何解决该问题向我提供一些反馈,我将不胜感激。干杯。


阅读 472

收藏
2021-03-23

共1个答案

小编典典

通常,直接授予登录权限是个坏主意。您应该在数据库中创建角色对象,并且应该将数据库中的所有权限分配给角色。

然后,将数据库移动到另一台计算机(或重新安装)时,您只需修改服务器登录名和角色分配即可。

2021-03-23