在使用存储过程进行建表时,提示没有权限 :ORA-01031: insufficient privileges 如下图所示
存储过程代码如下:
CREATE OR REPLACE PROCEDURE sp_test IS
v_sql VARCHAR2(500);
----------备份表
v_sql := 'create table t_test as select * from user_tables' ;
EXECUTE IMMEDIATE v_sql;
--清空
END;
但是sql命令窗口是能正常执行建表语句的。
找了很久的问题也没发现,终于找到解决办法就是加上 Authid Current_User
CREATE OR REPLACE PROCEDURE sp_test Authid Current_User IS
v_sql VARCHAR2<