数据库生态圈(RDB & NoSQL & Bigdata)——专注于关系库优化(Oracle & Mysql & Postgresql & SQL Server )

https://www.cnblogs.com/lhdz_bj
http://blog.itpub.net/8484829
https://blog.csdn.net/tuning_optmization
https://www.zhihu.com/people/lhdz_bj

导航

Oracle 10g中将分区表varchar2列更改为clob

现场有需求,要求在线更改一张分区表的varchar2字段为clob,通过实验测试,可以采用之下方案:

--测试表(四个range分区,每个分区一条记录):
  test(c1 int,c2 varchar2(100));

--添加列c3(为clob类型)
  alter table test add c3 clob;

--copy列c2数据到列c3
  update test set c3=c2;

--测试列c3数据(可以采取任何措施测试列c3数据,以确保列c3数据和列c2数据完全一致),例如:
  select c1,c3 from test;

--在上步测试没问题的前提下,删除列c2
  alter table test drop column c2;

--列更名:c3-->c2
  alter table test rename column c3 to c2;

posted on 2012-02-27 14:18  lhdz_bj  阅读(481)  评论(0编辑  收藏  举报