我想從涉及多個表的查詢中檢索數據。 我有一個查詢,如下所示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
有人知道爲什麼嗎?
上設置斷點,'字符串的orderID = resultSet.getString(」 foodName「);'看看'resultSet'包含什麼。 – ZnArK
@ZnArK發生這種情況是因爲ResultSet.getString(String)通過其名稱而不是其別名/標籤獲取該列。這實際上是「任何人知道爲什麼?」這個問題的答案,但由於它不能解決問題,所以我會留下它作爲評論。 – Goodwine