例1 :向department表中添加两个新列
Sql>alter table department add
(
Leader varchar2(20),
Updatedate date default sysdate
);
表已更改。
注意:1. 如果新增列指定了一个默认值(Default ),那么表中所有的行都将自动分配得到默认值。
2.在添加新列的时候,如果该表中已经有了数据,那么就不能指定Not null 约束。如果非要使用Not null约束,这时就需要用一个Default子句,再添加一个Not null约束来完成,如下:
Sql>alter table deparment add
(
Note varchar2(40) not null
);
Alter table department add
*
第 1 行出现错误:
ORA-01758:要添加必须的(Not null)列,则表必须为空
正确做法:
Sql>alter table department add
(
Not varchar2(40) default ‘备注’ not null
);
Sql>alter table department add
(
Leader varchar2(20),
Updatedate date default sysdate
);
表已更改。
注意:1. 如果新增列指定了一个默认值(Default ),那么表中所有的行都将自动分配得到默认值。
2.在添加新列的时候,如果该表中已经有了数据,那么就不能指定Not null 约束。如果非要使用Not null约束,这时就需要用一个Default子句,再添加一个Not null约束来完成,如下:
Sql>alter table deparment add
(
Note varchar2(40) not null
);
Alter table department add
*
第 1 行出现错误:
ORA-01758:要添加必须的(Not null)列,则表必须为空
正确做法:
Sql>alter table department add
(
Not varchar2(40) default ‘备注’ not null
);
转载于:https://blog.51cto.com/kitten/506313