当然可以!
如:Create table hr.test
(
num number(10),
name varchar2(10)
)

解决方案 »

  1.   

    直接CREATE TABLE Stock10079 (name char(20));就可以了。
      

  2.   

    不需要BEGIN 和END。直接运行中间建表的语句不就可以吗?
      

  3.   

    不需要BEGIN 和END。直接运行中间建表的语句不就可以吗?
      

  4.   

    放在
    begin
    end;
    中间为什么不行。
      

  5.   

    放在
    begin
    end;
    中间必须用动态sql了.
      

  6.   

    可以的,拿sqlplus试一下不就可以了吗!
      

  7.   

    不可以,除非使用完全动态SQL,否则在存储过程中是不支持CREATE语句的.当然在SQLPLUS下是可以的,但不能用BEGIN ..END ,因为如果写了BEGIN .. END 就跟执行存储过程一样了,同样不支持CREATE语句.如果要在存储过程中动态创建表,则使用动态SQL语句,调用DBMS_SQL包就可以了.