Transact-SQL 参考
GRANT
在安全系统中创建项目,使当前数据库中的用户得以处理当前数据库中的数据或执行特定的 Transact-SQL 语句。
语法
语句权限:
GRANT { ALL | statement [ ,...n ] }
TO security_account [ ,...n ]
对象权限:
GRANT
    { ALL [ PRIVILEGES ] | permission [ ,...n ] }
    {
        [ ( column [ ,...n ] ) ] ON { table | view }
        | ON { table | view } [ ( column [ ,...n ] ) ]
        | ON { stored_procedure | extended_procedure }
        | ON { user_defined_function }
    }
TO security_account [ ,...n ]
[ WITH GRANT OPTION ]
[ AS { group | role } ]
参数
ALL
表示授予所有可用的权限。对于语句权限,只有 sysadmin 角成员可以使用 ALL。对于对象权限,sysadmin db_owner 角成员和数据库对象所有者都可以使用 ALL
statement
是被授予权限的语句。语句列表可以包括:
CREATE DATABASE
CREATE DEFAULT
CREATE FUNCTION
CREATE PROCEDURE
CREATE RULE
CREATE TABLE
CREATE VIEW
BACKUP DATABASE
BACKUP LOG
n
一个占位符,表示此项可在逗号分隔的列表中重复。
TO
指定安全帐户列表。
security_account
是权限将应用的安全帐户。安全帐户可以是:
Microsoft® SQL Server 用户。
SQL Server 角。
Microsoft Windows NT® 用户。
Windows NT 组。
当权限被授予一个 SQL Server 用户或 Windows NT 用户帐户,指定的 security_account 是权限能影响到的唯一帐户。若权限被授予 SQL Server 角或 Wind
foreign key references用法
ows NT 组,权限可影响到当前数据库中该组或该角成员的所有用户。若组或角和它们的成员之间存在权限冲突,最严格的权限 (DENY) 优先起作用。security_account 必须在当前数据库中存在;不可将权限授予其它数据库中的用户、角或组,除非已为该用户在当前数据库中创建或给予了访问权限。
两个特殊的安全帐户可用于 GRANT 语句。授予 public 角的权限可应用于数据库中的所有用户。授予 guest 用户的权限可为所有在数据库中没有用户帐户的用户使用。
当授予某个 Windows NT 本地组或全局组权限时,请指定在其上定义该组的域名或计算机名,然后依次输入反斜线和组名。但是,若要授予访问 Windows NT 内置本地组的权限,请指定 BUILTIN 而不是域名或计算机名。
PRIVILEGES
是可以包含在符合 SQL-92 标准的语句中的可选关键字。
permission
是当前授予的对象权限。当在表、表值函数或视图上授予对象权限时,权限列表可以包括这些权限中的一个或多个:SELECTINSERTDELETEREFENENCES UPDATE。列列表可以与 SELECT UPDATE 权限一起提供。如果列列表未与 SELECT UPDATE 权限一起提供,那么该权限应用于表、视图或表值函数中的所有列。
在存储过程上授予的对象权限只可以包括 EXECUTE。在标量值函数上授予的对象权限可以包括 EXECUTE REFERENCES

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。