更改oracle中的数据类型而不删除数据

And*_*eda 2 oracle oracle10g

Product Version Oracle 10g
Run Code Online (Sandbox Code Playgroud)

我在oracle中有一个表,里面有一些数据.有一个类型为Number(10,0)的列.现在我想将其更改为数字(10,2)以允许小数.但要改变,oracle不允许不删除现有数据.我知道我可以进行数据备份 - >删除数据 - >更改类型 - >插入数据.但问题是有一个自动插入列从序列中获取值.因此当我插入它时,这些id将会改变....我不确定是否有人使用该id作为获取数据的密钥.那么如何在不改变ID的情况下改变它呢.

请帮忙..

Jef*_*emp 5

  1. 添加新的NUMBER(12,2)列,但名称不同.
  2. 更新新列,转换旧列中的所有值.
  3. 放下旧栏目.
  4. 使用所需名称重命名新列.