授予访问数据库对象的权限

作为管理员,您可以从 Products 表和 vw_Names 视图执行 SELECT,以及执行 pr_Names 过程;但是 Mary 不能执行。若要授予 Mary 必要的权限,请使用 GRANT 语句。

过程标题

  • 执行以下语句将 pr_Names 存储过程的 EXECUTE 权限授予 Mary。

    GRANT EXECUTE ON pr_Names TO Mary;
    GO
    

在这种情况下,Mary 只能通过使用存储过程访问 Products 表。如果您希望 Mary 能够对视图执行 SELECT 语句,则您还必须执行 GRANT SELECT ON vw_Names TO Mary。若要删除对数据库对象的访问权限,请使用 REVOKE 语句。

注意注意

如果表、视图和存储过程不是由同一架构拥有,则授予权限将变得更复杂。有关如何对具有不同所有者的对象配置权限的信息,请参阅所有权链

关于 GRANT

必须具有 EXECUTE 权限才能执行存储过程。必须具有 SELECT、INSERT、UPDATE 和 DELETE 权限才能访问和更改数据。GRANT 语句还用于其他权限,如创建表的权限。

课程中的下一个任务

摘要:配置数据库对象的权限