在Prepared Statement中使用“like”通配符
Prepared statements提供了一种安全有效的方式来执行SQL查询,特别是在处理用户时输入。在准备好的语句中使用 LIKE 关键字时,了解在哪里插入通配符至关重要。
在提供的代码中,您可以直接将 'keyword%' 添加到 pstmt.setString(1 中设置的值中、注释)。这意味着将代码修改为:
PreparedStatement pstmt = con.prepareStatement( "SELECT * FROM analysis WHERE notes like ?"); pstmt.setString(1, notes + "%"); ResultSet rs = pstmt.executeQuery();
通过将通配符直接添加到注释中,您可以在查询执行期间有效地将其附加到值中。这允许您执行前缀匹配搜索。
如果是后缀匹配或全局匹配搜索,请修改代码相应地:
后缀匹配:
pstmt.setString(1, "%" + notes);
全局匹配:
pstmt.setString(1, "%" + notes + "%");
记住,这很关键在添加通配符之前正确转义注释字符串中的特殊字符,例如 % 和 _。这可以防止模棱两可的模式并确保准确的结果。
以上是如何在 SQL 中的预准备语句中使用 LIKE 通配符?的详细内容。更多信息请关注PHP中文网其他相关文章!