执行包含删除查询的存储过程的用户是不是需要删除权限?
Posted
技术标签:
【中文标题】执行包含删除查询的存储过程的用户是不是需要删除权限?【英文标题】:Does the user who executes a stored procedure which contains a delete query need delete permission?执行包含删除查询的存储过程的用户是否需要删除权限? 【发布时间】:2012-09-14 15:15:33 【问题描述】:或者只有在执行不是存储过程的查询时才需要授予他们从表中删除记录的权限?
【问题讨论】:
【参考方案1】:执行包含删除查询的存储过程的用户是否需要删除权限?
不,这就是您可以将此类操作抽象为存储过程的原因之一。
所有用户需要的是对存储过程授予的EXEC
权限。这是因为假定存储过程的作者只允许从表中删除记录的有效情况。
只有在执行不是存储过程的查询时才需要授予他们从表中删除记录的权限
对,他们需要对表具有DELETE
权限才能使用DELETE
DML 操作删除记录。
【讨论】:
在 SQL Server 中,如果存储过程的所有者也是表的所有者,则为 true。请参阅所有权链接。以上是关于执行包含删除查询的存储过程的用户是不是需要删除权限?的主要内容,如果未能解决你的问题,请参考以下文章
sqlserver 存储过程 使用事务,说明在下边,求大神指教!