【发布时间】:2009-06-12 01:54:41
【问题描述】:
我有一个数据库 Mydatabase,其中有一个视图,MyView。
我希望任何属于 Public 角色成员的用户都能够从视图中进行选择。
我已经在 MyView TO [Public] 上完成了 GRANT SELECT,在名为 Test 的 sql 服务器上创建了一个测试登录名,并使其成为 Public 角色的成员,但仍然无法选择视图。
我做错了什么?
【问题讨论】:
我有一个数据库 Mydatabase,其中有一个视图,MyView。
我希望任何属于 Public 角色成员的用户都能够从视图中进行选择。
我已经在 MyView TO [Public] 上完成了 GRANT SELECT,在名为 Test 的 sql 服务器上创建了一个测试登录名,并使其成为 Public 角色的成员,但仍然无法选择视图。
我做错了什么?
【问题讨论】:
USE MyDB
GO
CREATE USER Test FROM LOGIN Test
GO
GRANT CONNECT TO Test
GO
登录“Test”需要在数据库中设置为“User”。 默认情况下,所有用户都是数据库公共角色的成员。
【讨论】:
如果您想授予所有人或公共连接访问数据库的权限,请进入数据库属性,转到权限页面,将“guest”添加到“用户或角色”列表中,然后选择它,然后在下半部分,找到“连接”行,选择“授予”,将其打开,然后单击“确定”。这使所有服务器登录都可以连接到该数据库。
【讨论】:
登录名和用户本质上是不同的。登录在服务器级别,用户在数据库级别。每个用户都有一个相应的登录名。同时,并不是每个登录都有对应的用户帐号。
【讨论】: