随笔 - 22  文章 - 0  评论 - 0  阅读 - 14155

存储过程中ORA-01031: insufficient privileges的解决方法(转)

执行某个存储过程时报错:ORA-01031: insufficient privileges。

  调试存储过程,发现在存储过程运行到创建表的这一步时出错,意即没有权限创建表,但实际上执行这个存储过程的用户是有创建表的权限的,在网上查找同样的错误信息,发现基本上都是登陆数据库的时候报这个错误,并没有执行存储过程中报这个错误的案例。

  请教同事之后得到解决方法,在存储过程中添加如下内容即可:Authid Current_User,修改后的存储过程结构如下:

复制代码
CREATE OR REPLACE PROCEDURE P_RES_F_UD_FLOW(TIME_DAY IN NUMBER) Authid Current_User AS

ERR_DESC VARCHAR2(32767);
V_SQL_ERROR VARCHAR2(32767);

BEGIN

EXECUTE IMMEDIATE 'CREATE TABLE T_RES_F_UD_FLOW_TMP_1
(
COVER_NAME VARCHAR2(200) not null,
TIME_TYPE INTEGER,
TIME_DAY NUMBER(8),
TIME_HOUR NUMBER(2),
GPRS_FLOW FLOAT,
TD_FLOW FLOAT,
WLAN_FLOW FLOAT
)';

END P_RES_F_UD_FLOW;
复制代码

 

---END;

posted on   宇宙毒蛇  阅读(621)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示