Hibernate里插入oracle数据出现:ORA-01747: invaid user.table.column, table.column, or column specification

      Hibernate里插入oracle数据出现ORA-01747: invaid user.table.column, table.column, or column specification错误:
      查了数据库和hibernate反向工程生成的持久化层:没有发现任何错误,但是程序始终提示这个错误,检查了N+1便sql语句,从新把项目发布到weblogic上,还是报一样的错,最后把hql全部改成sql,也是一个鸟样,郁闷死了。后来只能逐步跟踪执行的每条语句,最后发现竟然是save(person)出的错,晕!
说到底还是持久层与数据库不对应,试着在oracle里面直接插入数据,发现根本没问题,所以就是hibernate持久层有问题,再后来就开始怀疑字段名字是不是被限制使用,后来查了一下才发现:
     user和level在hibernate里面是保留字,不能被使用,我使用了level字段,所以出现这种问题吗?
     试着改了一下数据库level字段,重新生成了一下持久化层,改动了一下程序,结果好了,不报错了!
    确实如此!user和level是hibernate里的保留字,不能使用!
    哎呀,天啊,还有这种问题,实在太离谱,Hibernate也不自己提示,不过还好总算解决了!
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值