Oracle的超长⽂本字段问题
项⽬中,需要对数据库中的⼀个字段进⾏修改,以前是varchar2(4000)的⼀个类型,
但是这次字段的值的长度为7000以上
问题:使⽤PL/SQL直接将varchar修改为clob,提⽰⽆法修改:ORA-01439错误
解决:字符串长度过长
1、要修改⼀个字段类型的时候,⾸先要将数据清空。
2、clob是⼀个特殊类型,不能直接从varchar转换为clob,需要使⽤Long类型,来做⼀个过渡(可以先修改为Long类型,然后从Long修改为clob . )
-------------------索引失效----------------------
上⾯我们对字段的类型,进⾏了修改,但是另⼀个问题⼜出来了,就是索引失效
问题: ORA-01502: 索引或这类索引的分区处于不可⽤状态
分析:这个错误是索引失效造成,必须重建索引
解决:
直接在PL/SQL中,运⾏下⾯语句,就可以了。
alter index PK_T_CMS_CATALOG rebuild;
PK_T_CMS_CATALOG 是报错的那个索引的名字
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论