寶駿rs-5 幫忙看段java代碼,怎么用vector對象,讀取rs一行的值?
幫忙看段java代碼,怎么用vector對象,讀取rs一行的值?兄臺,你這里把結(jié)果集的每一條記錄封裝成了一個(gè)MAP對象,你也知道,MAP對象的訪問必須要KEY才能得到value,所以你要想得到XXX,
幫忙看段java代碼,怎么用vector對象,讀取rs一行的值?
兄臺,你這里把結(jié)果集的每一條記錄封裝成了一個(gè)MAP對象,你也知道,MAP對象的訪問必須要KEY才能得到value,所以你要想得到XXX,必須知道這一列的名字,比如 ((Map)vc.get(0)).get(column_name)這樣獲取,如果你不知道名字,只知道順序就完了,因?yàn)镸AP不是按順序存放元素的,你如果通過迭代的方式遍歷,你根本不知道哪個(gè)是結(jié)果集的第一列哪個(gè)是第二列。。建議把結(jié)果集的每一列定義成一個(gè)對象例如class RowSet { Map colMap = new HashMap() Object[] fileds = null}fileds,按順序存放每一列的值,colMap ,存放列名稱與值的對應(yīng)關(guān)系,以后你根據(jù)index獲取 就從fileds 獲取值,根據(jù)名稱就從colMap里獲取值,你還可以擴(kuò)展其它功能。
如何獲取ResultSet總行數(shù)?
方法一:利用ResultSet的getRow方法來獲得ResultSet的總行數(shù)Java代碼ResultSet rs rs.last() //移到最后一行 int rowCount = rs.getRow() //得到當(dāng)前行號,也就是記錄數(shù) rs.beforeFirst() //如果還要用結(jié)果集,就把指針再移到初始化的位置 方法二:利用循環(huán)ResultSet的元素來獲得ResultSet的總行數(shù)Java代碼ResultSet rs int rowCount = 0 while(rset.next()) { rowCount } 方法三:利用sql語句中的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_") }
java如何獲取剛插入記錄的自增長id號?
在mysql 中是這樣的:例如你剛進(jìn)行插入語句:String sql = "insert into table values(...)"objConn.executeUpdate(sql)下面是取剛插入數(shù)據(jù)庫的ID號long ret_id=0ResultSet rs = objConn.executeQuery("select LAST_INSERT_ID()")if (rs.next())ret_id = rs.getLong(1)