在安全性系統中建立項目,使目前資料庫中的使用者得以處理資料或執行特定 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 } ]
EXECUTE 權限預設授予 public 角色,但執行時仍檢查角色成員資格文件包含詳細的固定伺服器角色(sysadmin、serveradmin、dbcreator 等)與固定資料庫角色(db_owner、db_datareader、db_ddladmin 等)可執行的 Transact-SQL 陳述式對照表。
-- A. 授予陳述式權限
GRANT CREATE DATABASE, CREATE TABLE TO Mary, John, [Corporate\BobJ]
-- B. 權限階層中授予物件權限
USE pubs
GRANT SELECT ON authors TO public
GRANT INSERT, UPDATE, DELETE ON authors TO Mary, John, Tom
-- C. 給 SQL Server 角色授予權限
GRANT CREATE TABLE TO Accounting
-- D. 使用 AS 選項授予權限
/* User Jean */ GRANT SELECT ON Plan_Data TO Accounting WITH GRANT OPTION
/* User Jill */ GRANT SELECT ON Plan_Data TO Jack AS Accounting