我有很多用于不同客户端的存储过程,因为少数客户端有一个用户需要为AdminRole添加AdminRole和执行权限,因为少数客户端没有用户AdminRole和没有必要拥有执行权限。存储过程在sql server中的执行权限问题
每个存储过程具有
对于前:
CREATE PROCEDURE PROCEDURENAME AS
SELECT FIRSTNAME FROM TABLE1
GO
GRANT EXECUTE ON PROCEDURENAME TO ADMINROLE
GO
这一行到底,但是这无法在没有管理员角色来执行。我如何在SQL存储过程中实现这个逻辑?
If userrole contains AdminRole then
--Execute these 2 lines
GRANT EXECUTE ON PROCEDURENAME TO ADMINROLE
GO
else
'Do nothing
这是数据库级别而不是在每个存储过程中运行? – Sharpeye500 2012-04-12 20:07:11