在存储过程里执行DDL语句,必须用动态Sql!
execute immediate 'create table .....';

解决方案 »

  1.   

    为什么在执行以下语句时报错:无效CREATE命令?
    execute immediate 'CREATE GLOBAL TEMPORARY TABLE TmpTotalDefectQty
    (
    DefectID   Numeric(18,8),
    DefectQty  Numeric(18,8),
    MonthNo    Numeric(3,0)
    )On Commit Preserver Rows';谢谢
      

  2.   

    如果列数固定,没必要动态创建临时表
    oracle的临时表跟sql server的有比较大的区别在外面创建,就可以了。
      

  3.   

    就是在sql*plus里面创建就行了
    一直存在,可以访问,不需要删除,
    自己只能看到自己的数据,commit后,自动清空。