日期:2014-05-17  浏览次数:20733 次

更改字段类型
我在网上看到的一篇文章这样写的 但是操作到红色的那一行报错了 说缺少右括号 是怎么回事呢
/*修改原字段名*/
ALTER TABLE 表名 RENAME COLUMN 字段名 TO 字段名1;
/*添加一个和原字段同名的字段*/
ALTER TABLE 表名 ADD 字段名 VARCHAR2(30);
/*
将原来的数据更新到新字段中
这是要注意,一定要显示进行数据类型转换(不同于MSSQL)
*/
UPDATE 表名 SET 字段名 = CAST(字段名1 AS VARCHAR2(30));
/*删除原来的备份字段*/
ALTER TABLE 表名 DROP COLUMN 字段名1;



------解决方案--------------------
UPDATE 表名 SET 字段名 = 字段名1
------解决方案--------------------
不是这样修改表字段结构的

假如表T有字段filed1 varchar2(50),如果想要更新T表字段filed1的数据为number类型

create table T_bak as select xxx,xxx,xxx,xxx,cast(filed1 as number) from T;

drop table T;

但是前提是filed1中都必须是数据,不能有字母。