首页 >数据库 >mysql教程 >为什么我的 Java 中的PreparedStatement 会抛出''?'附近的 SQL 语法不正确”错误?

为什么我的 Java 中的PreparedStatement 会抛出''?'附近的 SQL 语法不正确”错误?

Barbara Streisand
Barbara Streisand原创
2025-01-11 15:37:42317浏览

Why is my PreparedStatement in Java throwing an

在MySQL中正确使用PreparedStatement

Java 开发人员在与 MySQL 数据库交互时经常会遇到 SQLExceptionPreparedStatement 错误。 常见错误消息指出问号 (“?”) 附近的 SQL 语法不正确。这通常源于声明准备不当。

一个具体原因是将 executeQuery() 与字符串参数一起使用。这会绕过参数绑定,执行原始查询字符串而不是参数化版本。 解决方案是在没有 PreparedStatement 字符串参数的情况下执行

更正后的代码应该是:

<code class="language-java">statement.executeQuery();</code>

省略 executeQuery() 中的字符串参数可确保使用 setString() 等方法设置的参数(例如 surnamename)在执行之前正确替换到 SQL 查询中。这可以防止与占位符相关的 SQL 语法错误。

以上是为什么我的 Java 中的PreparedStatement 会抛出''?'附近的 SQL 语法不正确”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn