1. 程式人生 > >(5)JDBC查詢(ResultSet)

(5)JDBC查詢(ResultSet)

ResultSet: 結果集。 封裝了使用JDBC進行查詢的結果
1. 呼叫Statement 物件的 executeQuery(sql) 可以得到結果集。
2. ResultSet 返回的實際上就是一張資料表 有一個指標指向資料表的第一樣的前面。
可以呼叫next() 方法檢測下一行是否有效 若有效該方法返回true 且指標下移。
Iterator 相當於hasNext() 和next() 方法的結合體
3. 當指標對位到一行時,可以通過呼叫getXxx(index) 或者 getXxx(columnName)
獲取每一列的值 列如 : getInt(1) , getString(“name”)
** 注意 ** 這裡getXxx(index) 是從下標 1 開始的。


4. ResultSet 當然也需要進行關閉

	public void testResultSet()
	{
		// 獲取id = 4 的customers 資料表的記錄  並列印
		
		Connection conn = null;
		Statement statement = null;
		ResultSet rs = null;
		
		try {
			//1. 獲取Connection
			conn = JDBCTools.getConnection();
			//2. 獲取Statement
			statement = conn.createStatement();
			//3. 準備SQL  這裡是查詢資料庫裡面的customers
String sql = "SELECT id,name,email FROM customers"; //4. 執行查詢, 得到ResultSet rs = statement.executeQuery(sql); //5. 處理ResultSet if(rs.next()) { int id = rs.getInt(1); String name = rs.getString(2); String email = rs.getString(3); System.out.println(id); System.out.println
(name); System.out.println(email); } } catch (Exception e) { e.printStackTrace(); }finally { //6. 關閉資料庫源 這是呼叫JDBCTools 關閉資料庫的方法 JDBCTools.release(rs, statement, conn); } }