ORACLE中修改已存数据的列的数据类型
2016-12-06 18:43
260 查看
在Oralce中,修改一张表中数据列的类型,前提是该列不能有数据,否则无法修改,在plsql中会出现如下提示
![](http://img.blog.csdn.net/20161206184607871)
为此,可以采用两种方式解决。
1、转移列数据后重命名的方式
--创建一个临时列
2、转移列数据列置空后删除
为此,可以采用两种方式解决。
1、转移列数据后重命名的方式
--创建一个临时列
alter table CHECK_MAIN_INFO add checkport_no_temp varchar2(60) default '0'; --拷贝数据到临时列 update CHECK_MAIN_INFO t set t.checkport_no_temp = t.checkport_no --删除原来的列 alter table CHECK_MAIN_INFO drop column checkport_no; --修改临时列名称 alter table CHECK_MAIN_INFO rename column checkport_no_temp to checkport_no;
2、转移列数据列置空后删除
--创建一个临时列 alter table CHECK_MAIN_INFO add checkport_no_temp varchar2(60) ; --拷贝数据到临时列 update CHECK_MAIN_INFO t set t.checkport_no_temp = t.checkport_no --清空列数据 update table CHECK_MAIN_INFO t set t.checkport_no = null; -更改临时列数据类型 alter table CHECK_MAIN_INFO modify(checkport_no varchar(60)); --将数据设置回原来列 update CHECK_MAIN_INFO t set t.checkport_no= t.checkport_no_temp ; --删除临时列 alter table CHECK_MAIN_INFO drop column checkport_no_temp ;
相关文章推荐
- oracle增加一列、修改一列数据类型
- oracle 修改某个字段的数据类型三种方式
- Oracle 如何修改列的数据类型
- Oracle 如何修改列的数据类型
- Oracle的学习二:表管理(数据类型、创建/修改表、添加/修改/删除数据、数据查询)
- Oracle中修改字段数据类型(含数据)
- oracle 在表中有数据的情况下修改表字段类型或缩小长度
- Oracle 如何修改列的数据类型
- Oracle 修改带数据的字段类型
- 修改oracle数据带有数据字段的数据字段的类型
- Oracle 修改带数据的字段类型
- Oracle 修改带数据的字段类型
- Oracle 修改现有列的数据类型
- Oracle 修改数据类型clob
- Oracle 修改带数据的字段类型
- 修改oracle某张表的ID类型varchar2为number,并保留原有数据(因为可能其他表与该表ID关联)
- Oracle 修改带数据的字段类型
- Oracle 如何修改列的数据类型
- Oracle 如何修改列的数据类型
- Oracle 修改带数据的字段类型