我想给一个表添加多个字段,但是却不能一次添加进去,不知oracle是否支持如下的语句啊:
alter table ABD add  
  A21 number(10) null,
  A22 varchar2(20) null,
  A23 varchar2(20) null执行时却报错:说ora-10735, invalid alter table option
但是一个字段一个字段的加却可以,不知道是我语句写的有问题还是其他什么原因,请大家指教一下了!

解决方案 »

  1.   

    应该写为:ALTER TABLE ABD ADD A21 number(10) null
                              ADD A22 varchar2(20) null
                              ADD A23 varchar2(20) null
      

  2.   


    Code For You
    SQL> create table testc
      2  (id number(3),
      3  name varchar2(16));表已创建。SQL> alter table testc add tel varchar2(18)
      2  add addr varchar2(10);表已更改。SQL> select * from testc;未选定行SQL> insert into testc
      2  values(&id,'&name','&tel','&addr');
    输入 id 的值:  1
    输入 name 的值:  中国
    输入 tel 的值:  13505596921
    输入 addr 的值:  上海
    原值    2: values(&id,'&name','&tel','&addr')
    新值    2: values(1,'中国','13505596921','上海')已创建 1 行。SQL> /
    输入 id 的值:  2
    输入 name 的值:  美国
    输入 tel 的值:  13818752142
    输入 addr 的值:  广州
    原值    2: values(&id,'&name','&tel','&addr')
    新值    2: values(2,'美国','13818752142','广州')已创建 1 行。SQL> select * from testc;         ID NAME           TEL                ADDR
    ---------- ---------------- ------------------ ----------
             1  中国             13505596921        上海
              2  美国             13818752142        广州
      

  3.   

    SQL> desc a;
    Name Type        Nullable Default Comments 
    ---- ----------- -------- ------- -------- 
    ID   NUMBER      Y                         
    XMMC CHAR(6)     Y                         
    CODE VARCHAR2(7) Y                         
    RYID NUMBER      Y                         
     
    SQL> alter table a
      2  add (id2  number,id3 number);
     
    Table altered
     
    SQL> desc a;
    Name Type        Nullable Default Comments 
    ---- ----------- -------- ------- -------- 
    ID   NUMBER      Y                         
    XMMC CHAR(6)     Y                         
    CODE VARCHAR2(7) Y                         
    RYID NUMBER      Y                         
    ID2  NUMBER      Y                         
    ID3  NUMBER      Y    
      

  4.   

    一次给指定的表添加多个字段的DDL语句如下:alter table yourtable add(A21 number(10),A22 varchar2(20),A23 varchar2(20));就可以,那个NULL不用写,因为ORACLE 对于新添加的字段,默认为NULL
      

  5.   

    alter table abd
    add (A21 number(10) null, 
        A22 varchar2(20) null, 
        A23 varchar2(20) null);