Removes a previously granted or denied permission.
Transact-SQL Syntax Conventions
Simplified syntax for REVOKE REVOKE [ GRANT OPTION FOR ] { [ ALL [ PRIVILEGES ] ] | permission [ ( column [ ,...n ] ) ] [ ,...n ] } [ ON [ class :: ] securable ] { TO | FROM } principal [ ,...n ] [ CASCADE] [ AS principal ]
Indicates that the ability to grant the specified permission will be revoked. This is required when you are using the CASCADE argument.
This option does not revoke all possible permissions. Revoking ALL is equivalent to revoking the following permissions.
Included for ISO compliance. Does not change the behavior of ALL.
Is the name of a permission. The valid mappings of permissions to securables are described in the topics listed in Securable-specific Syntax later in this topic.
Specifies the name of a column in a table on which permissions are being revoked. The parentheses are required.
Specifies the class of the securable on which the permission is being revoked. The scope qualifier :: is required.
Specifies the securable on which the permission is being revoked.
Is the name of a principal. The principals from which permissions on a securable can be revoked vary, depending on the securable. For more information about valid combinations, see the topics listed in Securable-specific Syntax later in this topic.
Indicates that the permission that is being revoked is also revoked from other principals to which it has been granted by this principal. When you are using the CASCADE argument, you must also include the GRANT OPTION FOR argument.
Specifies a principal from which the principal executing this query derives its right to revoke the permission.
The full syntax of the REVOKE statement is complex. The previous diagram has been simplified to draw attention to its structure. Complete syntax for revoking permissions on specific securables is described in the topics listed in Securable-specific Syntax later in this topic.
The REVOKE statement can be used to remove granted permissions, and the DENY statement can be used to prevent a principal from gaining a specific permission through a GRANT.
Granting a permission removes DENY or REVOKE of that permission on the specified securable. If the same permission is denied at a higher scope that contains the securable, the DENY takes precedence. However, revoking the granted permission at a higher scope does not take precedence.
The sp_helprotect system stored procedure reports permissions on a database-level securable
The REVOKE statement will fail if CASCADE is not specified when you are revoking a permission from a principal that was granted that permission with GRANT OPTION specified.
Principals with CONTROL permission on a securable can revoke permission on that securable. Object owners can revoke permissions on the objects they own.
Grantees of CONTROL SERVER permission, such as members of the sysadmin fixed server role, can revoke any permission on any securable in the server. Grantees of CONTROL permission on a database, such as members of the db_owner fixed database role, can revoke any permission on any securable in the database. Grantees of CONTROL permission on a schema can revoke any permission on any object within the schema.
The following tables lists the securables and the topics that describe the securable-specific syntax.
Application Role
REVOKE Database Principal Permissions (Transact-SQL)
Assembly
REVOKE Assembly Permissions (Transact-SQL)
Asymmetric Key
REVOKE Asymmetric Key Permissions (Transact-SQL)
Certificate
REVOKE Certificate Permissions (Transact-SQL)
Contract
REVOKE Service Broker Permissions (Transact-SQL)
Database
REVOKE Database Permissions (Transact-SQL)
Endpoint
REVOKE Endpoint Permissions (Transact-SQL)
Full-text Catalog
REVOKE Full-Text Permissions (Transact-SQL)
Full-text Stoplist
Function
REVOKE Object Permissions (Transact-SQL)
Login
REVOKE Server Principal Permissions (Transact-SQL)
Message Type
Object
Queue
Remote Service Binding
Role
Route
Schema
REVOKE Schema Permissions (Transact-SQL)
Server
REVOKE Server Permissions (Transact-SQL)
Service
Stored Procedure
Symmetric Key
REVOKE Symmetric Key Permissions (Transact-SQL)
Synonym
System Objects
REVOKE System Object Permissions (Transact-SQL)
Table
Type
REVOKE Type Permissions (Transact-SQL)
User
View
XML Schema Collection
REVOKE XML Schema Collection Permissions (Transact-SQL)