Oracle新建了一个存储过程,里面包含CREATE和DROP,逐条依据可以执行,但是执行整个存储过程报权限不足的错误。
在网上看到,Oracle规定,在默认的情况下,在调用存储过程用户的角色不起作用,即在执行存储过程时只有Public权限。所以在调用Create table时,会有权限不足的提示。所以需要给当前存储过程制定角色,指定AUTHID 属性,
即写为:
create or replace PROCEDURE 存储过程名称Authid Current_UserIS BEGIN
……;
END;
存储过程能够正常执行了!
URL:http://blog.csdn.net/gavinloo/article/details/6869234
新闻热点
疑难解答