resultset遍歷取數(shù)據(jù) 進(jìn)行數(shù)據(jù)操作時(shí),規(guī)范來(lái)講,ResultSet能不能作為返回值類(lèi)型?
進(jìn)行數(shù)據(jù)操作時(shí),規(guī)范來(lái)講,ResultSet能不能作為返回值類(lèi)型?一般都是返回Set,List或者單個(gè)對(duì)象值,我是沒(méi)見(jiàn)過(guò)返回ResultSet的,數(shù)據(jù)庫(kù)查詢(xún)之后,吧查詢(xún)結(jié)果集ResultSet遍歷一遍
進(jìn)行數(shù)據(jù)操作時(shí),規(guī)范來(lái)講,ResultSet能不能作為返回值類(lèi)型?
一般都是返回Set,List或者單個(gè)對(duì)象值,我是沒(méi)見(jiàn)過(guò)返回ResultSet的,數(shù)據(jù)庫(kù)查詢(xún)之后,吧查詢(xún)結(jié)果集ResultSet遍歷一遍整理成Set、List,然后關(guān)閉連接返回整理后的Set、List
如何獲取ResultSet總行數(shù)?
方法一:利用ResultSet的getRow方法來(lái)獲得ResultSet的總行數(shù)Java代碼ResultSet rs rs.last() //移到最后一行 int rowCount = rs.getRow() //得到當(dāng)前行號(hào),也就是記錄數(shù) rs.beforeFirst() //如果還要用結(jié)果集,就把指針再移到初始化的位置 方法二:利用循環(huán)ResultSet的元素來(lái)獲得ResultSet的總行數(shù)Java代碼ResultSet rs int rowCount = 0 while(rset.next()) { rowCount } 方法三:利用sql語(yǔ)句中的count函數(shù)獲得ResultSet的總行數(shù)Java代碼String sql = "select count(*) record_ from ( select * from yourtable t where t.column_ = "value_" )" ResultSet rs = ps.executeQuery(sql) int rowCount = 0 if(rs.next()) { rowCount=rs.getInt("record_") }
如何獲取ResultSet的行數(shù)和列數(shù)?
列數(shù)可以通過(guò)resultSet.getMetaData().getColumnCount()獲得。行數(shù)可以通過(guò) resultSet.last()rowCount = resultSet.getRow()