今天在使用PreparedStatement进行预编译时,发现使用IN(String) 传入一个字符串一逗号为分隔符却失效,例如传入"a,b,c", 查询的不是"a" "b" "c"三个数据,而是"a,b,c"一个数据
SELECT d.* FROM TLK_列表_分页 d WHERE 1=1 AND ITEM_多行文本二 IN ( ?)
这条语句中的参数在使用PrepareStatement来预编译之后,是不可以传入一个拼接字符串的,比如
String test="'a','b','c'";
prepareStatement.setString(1,test);
想要达到执行效果
SELECT d.* FROM TLK_列表_分页 d WHERE 1=1 AND ITEM_多行文本二 IN ('a','b','c')
但是实际执行的sql语句是:
SELECT d.* FROM TLK_列表_分页 d WHERE