* 2008/06/27 星期五
*蒙昭良
*环境:Linux + Oracle10gR2
*保留数据库表中的数据,把表中的字段varchar2改成clob类型
*/
在开发中很多情况是这样的,当初设计数据表时,把某一表的字段设置成varchar2(3800),当应用服务器运
行若干年后,varchar2(3800)已经不能满足数据了。varchar2类型最大只能是4000个字节,再扩展也不能满足需求时
,需要考虑替换成clob字段。比如表中还有很多word的文件,这样的存放的word文件一般是blob字段。
假如表infomation中已经有数万条数据,需要把varchar2(3800)改成clob字段:
1、首先备份该表infomation的所有数据
create table infomation_copy
as
select * from infomation;
2 drop表infomation
drop table infomation;
3 重建表infomation,把某字段的varchar2(3800)类型改成clob类型。(字段名和原来的一样,就把某字段的
varchar2(3800)类型改成clob类型)
4 导入原来的数据
insert into infomation
select * from infomation_copy;
执行上面的语句就ok了,Blob字段中的文件还在!
(注意:不能用PL/SQL Developer工具中的复制数据,然后粘贴数据,这样粘贴的数据。字段varchar2中的数据不能粘贴到字段clob中,blob中的文件也不能粘贴过来,只是把同一类型的int,varchar2等)
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12778571/viewspace-366149/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/12778571/viewspace-366149/