使用带有java.sql.PreparedStatement
实例的SQL IN
子句的最佳解决方案是什么?由于SQL注入攻击安全问题,它不支持多个值:一个?
占位符表示一个值,而不是一个值列表。
考虑下面的SQL语句:
SELECT my_column FROM my_table where search_column IN (?)
使用preparedStatement.setString( 1, "'A', 'B', 'C'" );
本质上是对首先使用?
的原因的一种无效的变通尝试。
有什么可行的解决办法?