①:修改字段数据类型 alter table scott.t1 modify id varchar(2000); ②: 增加字段 alter table t1 add name varchar2(40); ③:原表数据有空值,设置主键值(使用sys_guid()函数先进行更新) update t1 set id = sys_guid(); commit; ④: 为表字段设置默认值 alter table t1 modify id default sys_guid();/*可以加schema*/ ⑤:设置主键值 alter table t1 add constraint PK_t1_id primary key (id); ⑥:修改列名 alter table t1 rename column id to rn; ⑦:删除数据库一列 alter table t1 drop column id; ⑧:假设修改字段数据类型时,字段有数据,则改为varchar2(20)执行时会弹出:“ORA-01439:要更改数据类型,则要修改的列必须为空”,这时要用下面方法来解决这个问题:
/*修改原字段名name为name_tmp*/ alter table t1 rename column name to name_tmp;
/*增加一个和原字段名同名的字段name*/ alter table t1 add name varchar2(20);
/*将原字段name_tmp数据更新到增加的字段name*/ update t1 set name=trim(name_tmp);
/*更新完,删除原字段name_tmp*/ alter table t1 drop column name_tmp;