Oracle修改带数据的字段类型

来源:互联网 发布:马拉车算法 编辑:程序博客网 时间:2024/05/16 07:47

将要更改类型的字段名改名以备份,然后添加一个与要更改类型的字段名同名的字段(原字段已经改名),然后更新数据,最后删除改名备份的字段。

 以下操作在 Oracle 10.2.0.1.0 中通过。

/*修改原字段名*/
ALTER TABLE 表名 RENAME COLUMN 字段名 TO 字段名1;
/*添加一个和原字段同名的字段*/
ALTER TABLE 表名 ADD 字段名  VARCHAR2(30);
/*
将原来的数据更新到新字段中
这是要注意,一定要显示进行数据类型转换(不同于MSSQL)
*/
UPDATE 表名 SET 字段名 = CAST(字段名1 AS VARCHAR2(30));
/*删除原来的备份字段*/
ALTER TABLE 表名 DROP COLUMN 字段名1;

 

例子:将etg_resource表中orderCode字段由varchar2(30)类型改为number(38)

 

/*修改原字段名*/
ALTER TABLE etg_resource RENAME COLUMN orderCode TO orderCode1;
/*添加一个和原字段同名的字段*/
ALTER TABLE etg_resource ADD orderCode number(38);
/*
将原来的数据更新到新字段中
这是要注意,一定要显示进行数据类型转换(不同于MSSQL)
*/
UPDATE etg_resource SET orderCode = CAST(orderCode1 AS number(38));
/*删除原来的备份字段*/
ALTER TABLE etg_resource DROP COLUMN orderCode1;

0 0
原创粉丝点击