网址:http://peng-jian-ming.iteye.com/blog/185797
应该是预编译。
内容:
在Ibatis中我们使用SqlMap进行Sql查询时需要引用参数,在参数引用中遇到的符号#和$之间的区分为,#可以进行预编译,进行类型匹配,而$不进行数据类型匹配,例如:
select * from table where id = #id#
其中如果字段id为字符型,那么#id#表示的就等价'$id$',如果id为整型,那么#id#就等价于$id$,
select * from table where id = $id$
如果字段id为整型,Sql语句就不会出错,但是如果字段id为字符型,那么Sql语句应该写成 select * from table where id = '$id$' ,否则SQL会执行,但会出现一些其它的原因,比如"0455857"里的零会被莫名其妙吞掉。