ORACLE存储过程创建表失败,失败的原因是什么,应该如何解决呢?下面就教您ORACLE存储过程创建表失败的解决方法,供您参考学习。
--当前用户为SUK,先创建一个测试ORACLE存存储过程:
- create or replace procedure p_create_table
- is
- begin
- Execute Immediate 'create table create_table(id int)';
- end p_create_table;
--然后测试
- SQL> exec p_create_table;
- begin p_create_table; end;
--报出错误:
- ORA-01031: 权限不足
- ORA-06512: 在"SUK.P_CREATE_TABLE", line 3
- ORA-06512: 在line 1
--解决方法:
登陆DBA用户或者具有DBA权限的用户,执行代码如下:
- GRANT CREATE ANY TABLE TO SUK;
即对SUK用户授予创建任何表的权限,就可以正常用ORACLE存储过程创建表了。
【编辑推荐】