修改表结构包括:
增加字段、删除字段、增加约束、删除约束、修改缺省值、修改字段数据类型、重命名字段、重命名表。所有的这些动作都是用alter table命令执行的。
1.增加字段
alter table om_port_employee_t add EMP_SNO VARCHAR2(50);
同时在该字段上定义约束,使用通常的语法:
alter table om_port_employee_t add constraint EMPSNO primary key (EMP_SNO);
为该字段添加注释:
comment on column om_port_employee_t.EMP_SNO is '用户流水号,唯一约束';
2.删除字段
要删除一个字段,用下面的命令:
alter table om_port_employee_t drop column EMP_Description; 不管字段里有什么数据,都会消失。和这个字段相关的约束也会被删除。不过,如果这个字段被另外一个表单外键所引用,则不会隐含的删除该约束。可以通过使用cascade来授权删除任何依赖该字段的东西:
alter table om_port_employee_t drop column EMP_Description cascade;
3.增加约束
要增加一个约束使用约束语法:
alter table om_port_employee_t add constraint EMPSNO primary key (EMP_SNO);
要增加一个不能写成约束的非空约束,如下:
alter table om_port_employee_t alter column EMP_SNO set not null;
4.删除约束
alter tabel om_port_employee_t drop constraint EMP_SNO;
和删除字段一样,如果想要删除有着被依赖关系的约束,需要用到cascade。
5.改变一个字段的缺省值
要为一个字段设置缺省值,用一下命令:
alter table om_port_employee_t alter column Emp_age set default 20;
请注意这么做不会影响任何表中现有的数据行,它只是为将来insert命令改变缺省值。
要删除缺省值用
alter table om_port_employee_t alter column Emp_age drop default;
6.修改一个字段的数据类型
alter table om_port_employee_t alter column Emp_age type varchar2(50);
修改字段类型之前,最好先删除那些约束。
7.给字段改名
alter table om_port_employee_t rename column Emp_SNO to Emp_Id;
8.给表改名字
alter table om_port_employee_t rename to employee;