SQL Server中的“GRANT ALL TO role”

时间:2008-12-03 19:36:04

标签: sql-server tsql

请有人解释以下语句在SQL Server 2005中的作用:

GRANT ALL TO pax_writer

pax_writer是先前使用语句

创建的数据库角色
CREATE ROLE pax_writer AUTHORIZATION dbo

2 个答案:

答案 0 :(得分:3)

Grants database permissions

这是您唯一可以退出ON ThingsAndStuff条款的时间。

  

所有的

     

此选项不会全部授予   可能的权限。授予ALL是   相当于授予以下内容   权限:BACKUP DATABASE,BACKUP   日志,创建数据库,创建默认值,   创造功能,创建程序,   创建规则,创建表和创建   VIEW。

答案 1 :(得分:2)

全部授予“某人”授予数据库中所有可用对象的所有权限。但我不确定这是假设在sql server 2005中工作,因为我担心他们只是为了向后兼容而离开“GRANT ALL”。

根据sql server 2005中的文章,这样工作:

  1. 如果安全数据库是数据库, “ALL”表示BACKUP DATABASE,BACKUP 日志,创建数据库,创建 默认,创造功能,创造 程序,创造规则,创造 表和创建视图。
  2. 如果安全标记是标量 功能,“ALL”表示执行和 引用。
  3. 如果安全性是表值 功能,“ALL”表示删除, INSERT,REFERENCES,SELECT和 UPDATE。
  4. 如果安全是存储的     程序,“ALL”表示执行。
  5. 如果保证是一张桌子,“全部” 表示DELETE,INSERT,REFERENCES, 选择和更新。
  6. 如果安全性是视图,则“ALL”表示DELETE,INSERT,REFERENCES,SELECT和UPDATE。
  7. 希望有人会得到正确答案

    MSDN - GRANT