i wan для получения данных из запроса, включающего множество таблиц. У меня есть следующий запросJDBC ResultSet получить столбец из разных таблиц
String sql = "SELECT "
+ "s.Food_ID AS 'Sales_FoodID', "
+ "f.Food_Name AS 'foodName' "
+ "FROM Ordering o, Sales s, Food f"
+ " WHERE o.Table_No = " + tableNo + ""
+ " AND o.Paid = '" + NOT_PAID + "'"
+ " AND s.Order_ID = o.Order_ID"
+ " AND f.Food_ID = s.Food_ID;";
resultSet = statement.executeQuery(sql);
ошибки не были обнаружены, когда я запустить программу, но после того, как я добавить эту строку, чтобы получить данные колонки за столом в:
String orderID = resultSet.getString("foodName");
Я дал эту ошибку :
java.sql.SQLException: Column not found
Кто-нибудь знает почему?
установить точку останова на 'Строка = resultSet.getString идентификатор заказа (» foodName ");' и посмотреть, что содержит 'resultSet'. – ZnArK
@ZnArK Это происходит потому, что ResultSet.getString (String) выбирает для столбца его имя, а не его псевдоним/метку. На самом деле это ответ на вопрос «кто-нибудь знает почему?», Но поскольку он не решит проблему, я оставлю это в качестве комментария. – Goodwine