概述
前言
出现这个问题让我很懵逼,首先列出本次问题出现的前提条件:
1、达梦数据库有表A,表A中有一个字段a,该字段类型为decimal;
2、由于数据库设计是由专门的DBA同事去设计,然后个人认为该字段无需设置成decimal,使用number即可,因此我在程序中,定义请求参数DTO实体类的该字段类型为Integer,和数据库交互的实体类中也是Integer;
3、此时我调用修改,修改该值为10,但是修改后,再次查询,发现为1。
问题分析
- 首先我认为是不是字段名不一致,于是我核对了一次,发现无误。
- 然后我将关注点放到了控制台,当我看到控制台的打印的sql语句,发现无误,此时我就已经开始懵逼。
- 随后我将控制台的sql语句放到了达梦的查询界面,然后填上set的值和where条件的值,执行后发现能修改成功,这个时候就更加懵逼了。
- 最后我想是不是数据类型的问题,于是我将程序中的字段类型修改为了double,然后测试,发现成功了。
- 最后的最后,我还是网上查询了一下,发现也有遇到此问题的朋友,但是没有解决方案。然后遇到一个说0.5变成1的,个人认为这个问题的关键在于是不是数据库字段类型decimal的第二个参数设置为0了。
最后
以上就是清爽砖头为你收集整理的达梦数据库字段类型decimal,java传入Integer,10变为1前言问题分析的全部内容,希望文章能够帮你解决达梦数据库字段类型decimal,java传入Integer,10变为1前言问题分析所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复