0

我有一个数据库projeto和一个用户USUARIO。我应该怎么做才能USUARIO访问projeto

我试过了:

GRANT ALL ON projeto TO USUARIO

但我收到以下错误:

Msg 15151, Level 16, State 1, Line 1     
Cannot find the object 'projeto', because it does not exist or you do not have permission.

我正在使用该sa帐户。

4

4 回答 4

0

这个错误意味着 SQLServer 找不到名为的对象"Projeto"...证明有一个名为...的数据库"Projeto"...也许你写错了...检查它运行这个查询"Select * from sys.databases"和你的“授予”问题...这里是官方的授予命令的 Microsoft 文档http://msdn.microsoft.com/en-us/library/ms187965.aspx

于 2012-12-01T17:23:01.917 回答
0

如果您确实想授予 Projeto 数据库的所有权限,请将它们添加到该数据库中的 db_owner 角色。那是:

use [Projeto];
create user [usario]
exec sp_addrolemember @rolename = 'db_owner', @membername = 'usario';
于 2012-12-01T18:55:17.460 回答
0

这可能是一个解决方案吗?

“object_name 是 TABLE、VIEW、STORED PROC 和 SEQUENCE 等数据库对象的名称”

也许您正在尝试授予数据库权限并且GRANT不接受数据库名称为object_name. 我从未尝试过授予数据库权限,所以我不确定这是否是问题

于 2012-12-01T17:18:35.093 回答
0

我认为您是在该数据库(不仅仅是数据库实例)上创建用户之后:

USE projeto
CREATE USER USUARIO  FOR LOGIN USUARIO 

以上将现有登录名(数据库实例用户)USUARIO 链接到 projeto 数据库上的新用户。

在此之后,您可以通过在 USUARIO 上使用 GRANT 命令进一步扩展权限,因为您现在在数据库中拥有该用户。

于 2012-12-01T17:18:43.447 回答