oracle 查询char类型的数据

曾经遇到一个坑。

select taskdate from taskinfo where taskdate='';//使用PLSQL工具 能查出结果

偏偏在java代码里面查询不出结果。

select taskdate from taskinfo where taskdate='20180828  ';//给查询条件的值添加两个空格后就能查出结果

原因:

taskdate在oracle表里面的数据类型是CHAR(10),

在oracle里面CHAR的长度是固定的,

存储字符串“taskdate",对于CHAR(10),表示你存储的字符将占10个字节(包括2个空字符),在数据库中它是以空格占位的.

oracle 用trunc(date) 函数去掉时分秒,只保留日期

-----------------------------------------------------------------------------
上一篇:Oracle中Blob和Clob类型的区别与操作


下一篇:用C++实现一个不能被继承的类