Lesson 2-4 - Granting Access to a Database Object

THIS TOPIC APPLIES TO: yesSQL Server (starting with 2008)yesAzure SQL DatabaseyesAzure SQL Data Warehouse yesParallel Data Warehouse

As an administrator, you can execute the SELECT from the Products table and the vw_Names view, and execute the pr_Names procedure; however, Mary cannot. To grant Mary the necessary permissions, use the GRANT statement.

Procedure Title

  1. Execute the following statement to give Mary the EXECUTE permission for the pr_Names stored procedure.

    GRANT EXECUTE ON pr_Names TO Mary;  

In this scenario, Mary can only access the Products table by using the stored procedure. If you want Mary to be able to execute a SELECT statement against the view, then you must also execute GRANT SELECT ON vw_Names TO Mary. To remove access to database objects, use the REVOKE statement.


If the table, the view, and the stored procedure are not owned by the same schema, granting permissions becomes more complex.


You must have EXECUTE permission to execute a stored procedure. You must have SELECT, INSERT, UPDATE, and DELETE permissions to access and change data. The GRANT statement is also used for other permissions, such as permission to create tables.

Next Task in Lesson

Summary: Configuring Permissions on Database Objects

See Also

GRANT (Transact-SQL)
REVOKE (Transact-SQL)