ResultSet rs = Statment.executeQuery();
rs.last();
int rowCount = rs.getRow();
在一般情況我們想使用rs.last();將cursor移到最後一行,
如此int rowCount = rs.getRow();這行就可以知道Table有幾筆資料(Rows),
但如果是用一般的ResultSet rs = Statement.executeQuery();
所取出的ResultSet是無法執行rs.last();來移動cursor ~"~(遺憾.....)
而且會拋出SQLException :Result set type is TYPE_FORWARD_ONLY
解決方法 :
在creat Statement物件時,就要指定輸出的ResultSet的型態,如下:
PreparedStatement prestm = con.prepareStatement(SQL,ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
本範例用PreparedStatement ,其與Statement差不多,只是呼叫方法是改為
con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
沒有留言:
張貼留言