最近在用fast框架做项目,往日志表插入数据的时候总是报错:
我以为是序列号没有获取到,加了日志再debug,证明序列号是存在的,但是错误还在:
数据库连的是oracle,前面写的更新数据也没有问题,只有插入数据报错。
对数据库操作的代码是框架下自动生成的,我看网上有人说需要把generator改为assigned,但是我如果改掉这里代码就无法生成
会报错:
问题原因:insert部分的代码是框架自动生成的,它自带了set序列号的方法,因此我自己的序列号根本没传进去。
解决办法:将原有的set部分注释掉,添加我自己的方法。至此,问题圆满解决。
总结:看似不合理的事情往往是有着十分合理的原因,遇到问题要考虑到所有可能影响结果的原因。有时真相就在那里,没有什么深奥的缘由,顺着去找就能发现。