oracle遇到的坑

1.jpa如果打开spring.jpa.hibernate.ddl-auto=update的话,会把给定长度比较长的字段更新为LONG类型,但是LONG类型在oracle中,一张表只能存在一个列
解决办法就是手动把列类型修改成CLOB,或者使用flyway

2.jpa在做update的时候,如果报错
ORA-22295: 不能把超过 4000 字节数据绑定到语句 1 中的 LOB 和 LONG
就是说不能同时update一张表中的LONG类型和BLOB/CLOB类型
解决办法是同一条sql,或者jpa的save中,只update一个LONG字段,或者多个BLOB/CLOB字段

3.如果报错
ORA-01502: 索引 'TEST0709.SYS_C0011897' 或这类索引的分区处于不可用状态
解决办法是使用查询
select * from user_indexes where status <> 'VALID';
查询到所有失效的索引,然后通过下面语句(替换要重建的索引名)来重建索引
alter index index_name rebuild;