oracle数据库问题
有一个表,在建表时把C_DJBH列的类型建成varchar类型的了,后来发现错了,现在表中已经有数据了,怎么将C_DJBH 的类型改成number(15),C_DJBH列中已有的值都是数字,求各位大侠帮忙,在线等,木有财富了,谅解!!!
有一个表,在建表时把C_DJBH列的类型建成varchar类型的了,后来发现错了,现在表中已经有数据了,怎么将C_DJBH 的类型改成number(15),C_DJBH列中已有的值都是数字,求各位大侠帮忙,在线等,木有财富了,谅解!!!
答案:可以尝试下面的步骤:
先把 C_DJBH 列 更名为 temp
ALTER TABLE 表名
RENAME COLUMN C_DJBH TO temp;
然后追加一列
ALTER TABLE 表名
ADD C_DJBH number(15);
然后更新数据
UPDATE 表名
SET C_DJBH = TO_NUMBER( temp );
最后删除 temp 列
ALTER TABLE 表名
DROP COLUMN temp;
其他:可以不改啊!如果要做运算得话用to_number函数转换一下就可以了!
上一个:请教Oracle数据库问题
下一个:oracle中的导入和导出