Mysql 数据库类型char类型 Java后台用sql查询的问题
我数据库存的数据是01,02,03这样的字符,数据字段类型为char类型,长度为2(我把长度改为4也会有这样的问题),但javadao层用自定义的sql语句查询,查询出来...
我数据库存的数据是01,02,03这样的字符,数据字段类型为char类型,长度为2(我把长度改为4也会有这样的问题),但java dao层用自定义的sql语句查询,查询出来的值为0,为什么?
我用hql查询是没问题的。 展开
我用hql查询是没问题的。 展开
8个回答
展开全部
楼主把你的sql在Mysql跑一下,看看查处的到底是什么,首先定位是数据库的问题还是java问题。
建议楼主把映射的实体类发出来看一下,有没有在getter或者setter中有多余的处理
建议楼主把映射的实体类发出来看一下,有没有在getter或者setter中有多余的处理
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
肯定是截取了前面一个字符0的啦
你的是字符串的啦 ,设计成字符的啦 ,当做字符处理的啦,所以取一个的啦
追问
char类型是定长的,也可指定长度,如果字段值的长度可以知道,且固定,char类型更好点点,效率会更好点呢。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
请注意,
在数据库中,char类型是严格控制字符的长度的
当数据存储至数据库时,如果不够长度,会自动在后面补填空格了,
那么你编写查询时,也应该补上相应的空字符。
请试一试,如有疑问,及时沟通!
在数据库中,char类型是严格控制字符的长度的
当数据存储至数据库时,如果不够长度,会自动在后面补填空格了,
那么你编写查询时,也应该补上相应的空字符。
请试一试,如有疑问,及时沟通!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你可以看看查出来的数据类型,变成charater了,char类型在JAVA中只有两个字符,别用框架的方法,用jdbc就可以的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你必须补充成4位去查询,char是严格按照位数比对的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询