我创建了一个包,我想在这个包体的存储过程中创建一个临时表。但我不能这样做,因为给出了一条错误消息,指出权限不足。我可以创建表,但在存储过程中,我不能这样做。请任何人都可以帮我在存储过程中创建临时表吗?
create or replace PACKAGE BODY PKG_MY_TESTING AS
PROCEDURE PRC_MY_TESTING_DATA(DATE DATE, ID NUMBER)
IS
EXECUTE IMMEDIATE 'CREATE GLOBAL TEMPORARY TABLE all_muster_ids
ON COMMIT DELETE ROWS AS
SELECT *
FROM MY_TABLE';
COMMIT;
EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
END PRC_MY_TESTING_DATA;
END PKG_MY_TESTING;
创建或替换 PACKAGE BODY PKG_MY_TESTING AS
程序 PRC_MY_TESTING_DATA(日期日期,ID 号) 是
立即执行'创建全局临时表all_muster_ids
提交时删除行为
选择 *
来自我的表';
提交;
例外
当其他人的时候
回滚;
END PRC_MY_TESTING_DATA;
结束 PKG_MY_TESTING;