你好,游客 登录 注册 搜索
背景:
阅读新闻

存储过程中创建表时 ORA-01031: insufficient privileges的解决方法

[日期:2012-08-31] 来源:Linux社区  作者:millerrch [字体: ]

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

调试存储过程,发现在存储过程运行到创建表的这一步时出错,意即没有权限创建表,但实际上执行这个存储过程的用户是有创建表的权限的,在网上得到解决方法,在存储过程中添加如下内容即可:Authid Current_User,修改后的存储过程结构如下:

  1. CREATE OR REPLACE PROCEDURE ITS_KK.pro_create_table_yhx Authid Current_User    
  2. IS  
  3.   
  4. BEGIN  
  5.   execute   immediate  'create   table   aaa(id   number(8),name   varchar2(10)) ';    
  6.   
  7.       
  8.  --  COMMIT;   
  9. EXCEPTION   
  10.    WHEN NO_DATA_FOUND   
  11.    THEN  
  12.       NULL;   
  13.    WHEN OTHERS   
  14.    THEN  
  15.       RAISE;   
  16. END pro_create_table_yhx;   
  17. /  
linux
相关资讯       Oracle错误代码 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款