我们在Oracle数据库存储的字符数据一般是用varchar2,但如果字符长度4000时,varchar2就存不下了,我们可以改用clob.
方法/步骤
1、首先说一下在修改数据库字段类型时遇到的问题。
2、我是用PL/SQL客户端直接改类型,将varchar2(4000)改为CLOB,结果提示‘ORA-22858:invalidalterationofdatatype’。
3、然后我把数据都删除了,再改类型,还是这个提示信息。网上提示的方法是“a=b,b屏顿幂垂=c,c=a”,我试了试,还是不行。于是乎,我统潇瘵侃就COPY出建表的SQL语句,然后把表删除,把SQL语句中的相应类型改为CLOB,创建表,这样就可以了。
4、右击要修改类型的表,选择‘查看’,打开的查看表窗口,选择右下角的‘查看SQL’,这里就是建表语句,把它们COPY出来。
5、把创建表的sql语句粘贴到sql窗口,将要修改的字段的数据类型改为CLOB,全选中SQL语句,按F8执行,或者按工具样上的齿轮按钮。这样表就创建了,类型也改了。
6、添加数据后,clob数据类型的字段是这样显示的。
7、ResultSetrs=。。。。。//读取操作oracle.sql.CLOBreadClob=(oracle.sql.CLOB)rs.getClob("data");
8、//写出操作writerClob.putString(1,"dataclob&qu艺皱麾酪ot;);......preparedStatement.setClob(1,writerClob);