gpt4 book ai didi

java - sql select 错误

转载 作者:行者123 更新时间:2023-11-30 00:02:10 24 4
gpt4 key购买 nike

我有一个 Java 代码:

String searchPerson = "select * from persons where surname like ? and TIMESTAMPDIFF(YEAR,dateOfBirth,CURDATE()) <= ?";
//connect to DB
PreparedStatement statement = connect.prepareStatement(searchPerson);
statement.setString(1,"%"+ surname + "%");
statement.setInt(2, age);
ResultSet resultPerson = statement.executeQuery();
//..code

然后我有 SQLException:

you have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''

如何正确?帮助。

谢谢!

最佳答案

在 SQL 中尝试更改行

"select * from persons where surname like ? and TIMESTAMPDIFF(YEAR,dateOfBirth,CURDATE()) <= ?";

对此:

"select * from persons where surname like '?' and TIMESTAMPDIFF(YEAR,dateOfBirth,CURDATE()) <= ?";

关键是在两个撇号(')之间添加第一个参数

当前的SQL命令是:

SELECT * FROM persons where surname like Name

但是对于 SQL 来说,这种格式应该是可以接受的:

SELECT * FROM persons where surname like 'Name'

关于java - sql select 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24931954/

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