日期:2014-05-16  浏览次数:20457 次

数据库:流已关闭 这类索引的分区处于不可用状态

今天用hibernate访问oracle数据库,发现一个问题;

IcaCaCert icaCaCert = IcaCaCert.findByCertSerialNumber(certSerial);

?

报异常: 流已关闭


看数据库发现有一个长文本字段的类型是:LONG(oracle特有的类型,相当于mysql的longtext)


于是就将该类型更改问clob类型( 不可逆

alter   table ICA_CA_CERT modify SIGN_BUF_P7 clob;

?再次访问没有流已关闭异常,但是又有新的异常: ITRUSCA.ICA_CA_CERT_USER_ID_IND这类索引的分区处于不可用状态


原来原先的表中有索引,我更改类型后索引错误;


重建索引,问题就可解决;


alter index ITRUSCA.ICA_CA_CERT_USER_ID_IND rebuild online;

?