Sql server 如何在SQL Server 2000中授予视图的选择权限?
我有一个用户,我想授予他对SQL Server 2000数据库的只读访问权限。我将它们放在db_datareader角色中,它们可以很好地从表中选择,但是当它们尝试从视图中选择时,总是返回0行(当作为db_所有者运行时,视图确实返回行)Sql server 如何在SQL Server 2000中授予视图的选择权限?,sql-server,sql-server-2000,roles,Sql Server,Sql Server 2000,Roles,我有一个用户,我想授予他对SQL Server 2000数据库的只读访问权限。我将它们放在db_datareader角色中,它们可以很好地从表中选择,但是当它们尝试从视图中选择时,总是返回0行(当作为db_所有者运行时,视图确实返回行) 如何授予此用户对读取视图的访问权限,同时确保它们无法写入数据库?将[viewname]上的选择授予[user或role\u name] 应传播到视图中引用的所有对象,如果这些对象获得零行,则它们对视图具有权限。如果他们没有权利,他们就会犯错误 视图中的某些代码正
如何授予此用户对读取视图的访问权限,同时确保它们无法写入数据库?将[viewname]上的选择授予[user或role\u name]
应传播到视图中引用的所有对象,如果这些对象获得零行,则它们对视图具有权限。如果他们没有权利,他们就会犯错误 视图中的某些代码正在过滤,例如下面的快速示例:
WHERE SUSER_SNAME() = 'dbo'
我的大胆。适用于SQLServer2005
db_datareader固定数据库角色的成员可以对数据库中的任何表或视图运行SELECT语句
例如,它说“读取所有用户表中的所有数据”,这略有不同。我一直认为它意味着表和视图,但我没有SQL Server 2000复选框可供检查