在oracle中,create table ...as subquery 中table能不能加字段和约束。像create table tab1(id int,name varchar) as select * from tab2,这样?

解决方案 »

  1.   

    好像不可以把,创建表的结构是子查询的结构。
    可以创建完毕在修改字段定义吧。或者先创建表后insert
      

  2.   

    SQL> create table t1(id primary key)
      2  as select * from t;
      

  3.   

    SQL> select constraint_name,constraint_type,table_name from user_constraints;CONSTRAINT_NAME                C TABLE_NAME
    ------------------------------ - ------------------------------
    SYS_C005167                    P T1
      

  4.   

    SQL> drop table t2;表已删除。SQL> create table t2(id primary key,name)
      2  as
      3  select id,' ' name from t;表已创建。
      

  5.   

    我有一个利用现有的excel文件创建oracle表的小工具:
    http://www.86vb.com/readfile.php?filetype=20090508121944&filename=20090508122849
    不知道能否满足你的需要,该工具建表的同时,写备注,创建关键字,关联表空间,我平时工作时就用他建表,好几百个表,不到一分钟搞定!
      

  6.   

    我试了试是可以的,比如 create table empbak as select * from emp;