微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在JDBC中使用MySQL子查询?

示例查询

SELECT country 
FROM data 
WHERE city LIKE 
(SELECT LEFT ('jakartada',7));

JDBC中的示例:

String sql = " SELECT country FROM data WHERE city LIKE (SELECT LEFT ('?',7)) ";
PreparedStatement ps = koneksi.prepareStatement(sql);
ps.setString(1,city    );
ResultSet rs = ps.executeQuery();

为什么这不能正常工作?

最佳答案
预准备语句中没有参数,但代码尝试设置参数.尝试在语句中添加参数.

String sql = " SELECT country FROM data WHERE city LIKE (SELECT LEFT (?,city    );
ResultSet rs = ps.executeQuery();

或者尝试删除设置参数的语句:

String sql = " SELECT country FROM data WHERE city LIKE (SELECT LEFT ('jakartada',7)) ";
PreparedStatement ps = koneksi.prepareStatement(sql);
ResultSet rs = ps.executeQuery();

原文地址:https://www.jb51.cc/mysql/433115.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐