我想得到表中的最后一个id。首先我这样做:
String selectId = "SELECT MAX(id) FROM book_store.cart" ;
PreparedStatement ps = conn.prepareStatement(selectId);
rs = ps.executeQuery();
while(rs.next()){
autoIncKey = rs.getInt("id");
}
这里我得到错误“列id未找到”。
然后我将查询更改为以下内容:
String selectId = "SELECT id FROM book_store.cart ORDER BY id DESC LIMIT 1";
我想知道为什么第一个查询会给我一个错误,而第二个查询不会,如果它们返回相同的值呢?
1条答案
按热度按时间bxfogqkk1#
第一个查询将返回列名为的行
MAX(id)
.不是列的最有用的名称,因此更改查询以设置该列的别名,如下所示
现在该列将被调用
id
以及rs.getInt("id")
会有用的