STR:='CREATE TABLE ....';
EXECUTE IMMEDIATE STR;

解决方案 »

  1.   


    execute immediate '
    CREATE TABLE TREE
    (
        a Integer;
        b Integer;
    ) ';
      

  2.   

    execute immediate '
    CREATE TABLE TREE
    (
        a Integer,
        b Integer
    ) ';
      

  3.   

    EXECUTE IMMEDIATE 'create table table_name ....';
      

  4.   

    調用DBMS_SQL包或如樓上各位說的動態SQL語句
      

  5.   

    str:='CREATE GLOBAL TEMPORARY TABLE TABLENAME (
       COL1  VARCHAR2(10),
       COL2  NUMBER
    ) ON COMMIT PRESERVE ROWS';
    execute immediate str;  --grant create table to user
      

  6.   

    我按照你们所说的做了,但是出现了如下错误:
    ORA-01031: 权限不足 ORA-06512: 在"ORADB.HUIZAI", line 6 ORA-06512: 在line 1CREATE OR REPLACE PROCEDURE "HUIZAI"   is
    begin
    execute immediate '
    create table aaa(aad varchar(22),dsdfdf varchar(33))';
    commit;
    end huizai;
    其中ORADB为数据库名,HUIZAI为存储过程名
    大侠请指教