sql试图在java中连接两个表,但我遇到了一个错误
我正在使用Sql和java。 这在sql中起作用:
use mybank
Select * from Account
inner join CustomerAccount on accountid = id
where customerid = 18
我用java编写了以下代码:
String sql = ("Select * From Account inner join CustomerAccount on accountid = id where customerid =?;");
try (Connection con = myDbManager.getConnection())
{
PreparedStatement ps = con.prepareStatement(sql);
ps.setInt(1, customer.getId());
Statement st = con.createStatement();
ResultSet rs = st.executeQuery(sql);
customer.getId
给我18分
但是我得到了这个错误
Incorrect syntax near '?'.
# 1 楼答案
问题在于:
您正在使用从} 。您应该使用^{}
Statement
接口继承的^{简而言之,将该行更改为:
并从代码中删除这个
Statement
变量,它只会使您和代码的未来读者感到困惑:此外,在从Java执行SQL语句时,应删除SQL语句中的分号:
# 2 楼答案
Java中的SQL查询不使用“;”: