create table testchar(c1 char(10));
insert into testchar(c1) values('a');
--没有空格
select * from testchar where c1='a'
--有一个空格
select * from testchar where c1='a ';
--多于10个空格
select * from testchar where c1='a ';
以上三条语句都能检索出来结果。
用PreparedStatement 必须在a后面跟9个空格才能检索出来结果。
String sql = "select c1 from testchar where c1= ? ";
PreparedStatement ps = oracleConn.prepareStatement(sql);
ps.setString(1,'a');
ResultSet rs = ps.executeQuery();
rs没有记录。
--a后面跟9个空格才能检索出来记录
ps.setString(1,'a ');
ResultSet rs = ps.executeQuery();
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/24057587/viewspace-732772/
,如需转载,请注明出处,否则将追究法律责任。