修改列的类型或者将列中字段变大小写

来源:互联网 发布:电子元器件数据库 编辑:程序博客网 时间:2024/06/01 11:57
若想修改某列的类型(该列有值存在),可以使用下面步骤:
1.先创建一个列:alter table service_order add (service_order_proc_status_bak char(2));
2.再将要修改的列的值赋值给刚创建的列:update service_order set service_order_proc_status_bak=service_order_proc_status;
3.然后修改刚创建列的约束(此处约束为:not null):alter table service_order modify (service_order_proc_status_bak not null); 
4.再删除要修改的列:alter table service_order drop (service_order_proc_status);
5.将新创建的列的名字改为刚删除列的名字:alter table service_order rename column service_order_proc_status_bak to service_order_proc_status;
6.如果该列有描述信息,就在步骤4之前复制一下然后执行:comment on column service_order.service_order_proc_status
  is '10: 已接收mvno请求   11: 已处理定单   12: 检测到全业务超时   13: 已接收全业务请求确认   14: 全业务返回省分超时   20: 已接收全业务反馈   21: 检测到MVNO超时   22: 已接收MVNO反馈确认'

7.最后,别忘了提交事务:commit;

将表中的某列(CODE_CATG)中的字段值全部变为大写update D_CODE_MAP set CODE_CATG =lower/ upper(CODE_CATG);       

将某非空列改为可空列:alter table table_name modify (field_name null);

0 0
原创粉丝点击