我这样写的表 tab;字段 a(varchar2(4000)) 转bolb 先重命名: alter table tab rename column a to aa; 后处理数据: insert into tab(a) select to_char(aa) from tab;报错: ora-01465;无效的十六进制数字
最好新建一个CLOD的字段然后UPDATE!
那我把原来的字段改成 clob行吗 最后数据能显示吗 我都是存的文字!
都存的文字,干吗用BLOB啊,用CLOB啊。 一般来说,BLOB用来存二进制文件,如jpeg/word/.class等等。纯文本的用CLOB。直接set clob字段 = 原来字段的值就可以啦。 所有要用到的命令如下:ALTER TABLE TB_INFO ADD (CONTENT1 CLOB); UPDATE TB_INFO SET CONTENT1=CONTENT; ALTER TABLE TB_INFO DROP COLUMN CONTENT; ALTER TABLE TB_INFO RENAME COLUMN CONTENT1 TO CONTENT;
先重命名:
alter table tab rename column a to aa;
后处理数据:
insert into tab(a) select to_char(aa) from tab;报错:
ora-01465;无效的十六进制数字
最后数据能显示吗 我都是存的文字!
一般来说,BLOB用来存二进制文件,如jpeg/word/.class等等。纯文本的用CLOB。直接set clob字段 = 原来字段的值就可以啦。
所有要用到的命令如下:ALTER TABLE TB_INFO ADD (CONTENT1 CLOB);
UPDATE TB_INFO SET CONTENT1=CONTENT;
ALTER TABLE TB_INFO DROP COLUMN CONTENT;
ALTER TABLE TB_INFO RENAME COLUMN CONTENT1 TO CONTENT;