博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mybatis使用char类型字段查询oracle数据库时结果查询不到的问题
阅读量:6575 次
发布时间:2019-06-24

本文共 438 字,大约阅读时间需要 1 分钟。

hot3.png

    小疯在使用mybatis时,遇到了一个问题就是,使用char类型字段作为查询条件时一直都查不出数据,其他类型的则可以。

    使用的数据库是oracle,查询条件字段类型是char(50),java代码对应的是String类型。

    后来经过排查,是由于在oracle中,char类型字段,如果内容长度不够,会自动以空格方式补足长度。如字段 name char(5),若值为sgl,那么oracle会自动用空格补足长度,最终值为sgl。

    一、解决方法:

        方法1:先用trim()函数把值去掉两边空格再作为条件查询

        方法2:将字段类型char()改为varchar2()类型。一般情况下,只有所有值长度都一样时才用char()类型,比如性别字段,用0表示男和1表示女时,就可以用char(1),如果值的长度不固定,有长有短,最好别用char()类型。

小疯是因为工作上的原因使用了方法一

转载于:https://my.oschina.net/yexiaofeng/blog/2991116

你可能感兴趣的文章
myeclipse注册码生成器
查看>>
BW数据源深入研究
查看>>
怎样快速学好PHP技术之PHP学习方法总结
查看>>
这是歌手,马云
查看>>
你不可不知的GopherChina大咖讲师们
查看>>
《Java工程师成神之路-基础篇》Java基础知识——序列化(已完结)
查看>>
iOS App间相互跳转漫谈 part2
查看>>
Android逆向之路---让我们试试另一种方法看漫画-(2)
查看>>
Java CAS 原理剖析
查看>>
iOS UIButton之UIEdgeInsets详解
查看>>
ISCC2014 writeup
查看>>
Java&Android 基础知识梳理(8) 容器类
查看>>
Kotlin 知识梳理(1) Kotlin 基础
查看>>
js正则表达式
查看>>
iOS socket通信,编解码,浮点型数据解析
查看>>
四十四、【CardView】
查看>>
Spring 定时器的使用---Xml、Annotation、自定义
查看>>
5步教你正确挑选一个期权合约!
查看>>
手把手教你如何新建scrapy爬虫框架的第一个项目(下)
查看>>
前端基础15:JS作用域基础
查看>>