gpt4 book ai didi

java - 在 JDBC 中插入单引号以进行 SQL 查询不起作用

转载 作者:行者123 更新时间:2023-12-01 17:49:55 27 4
gpt4 key购买 nike

我在通过 Oracle JDBC 在 JAVA 的准备好的语句中使用单引号时遇到了处理单引号的问题。

假设我们有一张 Restaurant 表,其中一列 Restaurant_name 的值为 1:Jack's Deli

我想使用一个简单的准备好的语句查询,如下所示:

    String result = "Jack\'\'s Deli"
String sqlStatement = "select * from Restaurant where restauraunt_name like ? escape '\\' ";
PreparedStatement pStmt = conn.prepareStatement(sqlStatement);
pstmt.setString(1, result);

结果显示 0 个返回值,但是当我直接在数据库 (ORACLE) 中搜索查询时,它工作正常并检索结果。 (Oracle 使用两个单引号作为第一个单引号的转义符)

我认为该值没有正确传递到数据库。或者存在其他格式问题。

最佳答案

准备好的语句的要点是您不需要任何转义。

.setString(1, "Jack's Deli") 将完成它。

关于java - 在 JDBC 中插入单引号以进行 SQL 查询不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60817015/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com