继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

java hibernate + oracle不友好之处

POPMUISE
关注TA
已关注
手记 273
粉丝 80
获赞 423

oracle + hibernate 环境,如果表中有 clob字段,hibernate的Entity类,如果Column注解打在私有成员上,则clob私有成员,首字母一定要按字母顺序排在最后,安全的做法是用 "zz"开头。

 

原因是 hibernate 在生成insert语句时,会按私有成员来排序,生成类似 insert tableX (A,B,C...) values(?,?,?...) 的sql语句,而在最后提交阶段,insert语句中,clob后面的字段,除了SEQUENCE id外,不允许再有其它非clob型的字段,比如,A是clob字段,而B不是,则执行时会报错:

ORA-24816: 在实际的 LONG 或 LOB 列之后提供了扩展的非 LONG 绑定数据

 

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP