【发布时间】:2021-06-21 12:54:47
【问题描述】:
SQL中有一段代码:
SELECT users.login AS 'Все заказы' , items.title AS ' ' FROM `orders`
JOIN `items` ON orders.item_id = items.id
JOIN `users` ON users.id = orders.user_id
IntelliJ IDEA 中的代码本身
public void vivod(String table) throws SQLException, ClassNotFoundException {
String sql = "SELECT users.login AS `Все заказы` , items.title' FROM `orders`" +
"JOIN `users` ON users.id = orders.user_id" +
"JOIN `items` ON orders.item_id = items.id";
Statement statement = getDbConnection().createStatement();
ResultSet res = statement.executeQuery( sql );
while (res.next()) {
System.out.println( res.getString( "orders" ) );
}
}
在SQL中,输出正确,但插入IntelliJ IDEA时,报错
java.sql.SQLSyntaxErrorException:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的“items ON orders.item_id = items.id”附近使用正确的语法
最终结果应该是这样的:
是什么导致了错误?
【问题讨论】:
-
更改 "JOIN
usersON users.id = orders.user_id" + 到 "JOINusersON users.id = orders.user_id " + 。下一行 order_user_id 和 JOIN 之间没有空格 -
@BerndBuffen 写道:无法调用“String.equalsIgnoreCase(String)”,因为“com.mysql.cj.result.Field.getName()”的返回值为 null
标签: java mysql sql join select