SQL副本列和更改数据类型

时间:2012-07-20 08:36:06

标签: sql types clob type-conversion tablespace

我有一张已填充的表格。

我需要将一列的数据类型从LONG更改为CLOB

但是,此数据库由第三方托管,表空间有限。

我知道命令:

ALTER TABLE myTable MODIFY my_data CLOB

然而,经过漫长的等待后我才收到错误:

ORA-01652: unable to extend temp segment by 128 in tablespace

增加表空间不是一种选择。

有没有工作?

我可以创建一个数据类型为CLOB的新列,然后从my_data(LONG)复制和转换数据而不会占用表空间吗?我可以关闭撤消来帮忙吗?

非常感谢

1 个答案:

答案 0 :(得分:0)

我想说最好的选择是使用新数据类型创建一个新列,根据旧列更新它,然后删除旧列,但由于您有空间问题可能不是一个选项。

或者你可以尝试在一系列的浴室里做到这一点。例如,将10000行数据移动到新列,然后在这些10000上将旧值设置为null以释放一些空间。