动态SQL问题。
CREATE TABLE tb_test(a number);
CREATE OR REPLACE PROCEDURE proc_test AS
sqlcmd1 VARCHAR2(1024) := 'CREATE OR REPLACE VIEW v_test AS SELECT COUNT(*) times FROM tb_test';
sqlcmd2 VARCHAR2(1024) := 'CREATE TABLE tb_tb_test AS SELECT * FROM tb_test';
BEGIN
EXECUTE IMMEDIATE sqlcmd2;
END;
sql>EXEC proc_test;
现在的问题是:
sqlcmd2可以执行,sqlcmd1不可以执行(建表可以,建视图不可以)。为什么?
我查看了当前session具有的权限,有CREATE VIEW ,CREATE ANY VIEW权限。
谢谢。

