JDBC之ResultSet

JDBC之ResultSet

  • 获取ResultSet结果集
  • 获取一列的值
  • 获取一行记录
  • 获取多行记录

获取ResultSet结果集

通过调用 Statement 对象的 excuteQuery() 方法创建该对象;ResultSet 对象以逻辑表格的形式封装了执行数据库操作的结果集,ResultSet 对象维护了一个指向当前数据行的游标,初始的时候,游标在第一行之前,可以通过 ResultSet 对象的 next() 方法移动到下一行。
ResultSet 接口的常用方法

  • next(),返回值是boolean类型,如果结果集有数据返回true,并且游标指向下一行;如果结果集没有数据返回false;
  • getString(int columnIndex),根据列的下标获取某一列对应的值,下标从1开始;
    Java代码:
	ResultSet rs = statement.executeQuery();
	rs.getXxx(index);//根据列顺序获取指定列对应的值
	rs.getObject(index);//根据列顺序获取指定列对应的值
	rs.getXxx(columnLabel);//根据列别名获取对应列的值
	rs.getObject(columnLabel);//根据列别名获取对应列的值

获取一列的值

	Connection connection = JDBCTools.getConnection();
		
	String sql = "select name from user where id=?";
	PreparedStatement statement = connection.prepareStatement(sql);
	statement.setLong(1, 9);
		
	ResultSet rs = statement.executeQuery();
	while(rs.next()){
		return rs.getObject(1);
	}
	return null;

获取一行记录

	Connection connection = JDBCTools.getConnection();
		
	String sql = "select id,last_name,email,gender from employee where id=?";
	PreparedStatement statement = connection.prepareStatement(sql);
	statement.setLong(1, 1);
		
	ResultSet rs = statement.executeQuery();
	while(rs.next()){
		Integer id = rs.getInt(1);
		String lastName = rs.getString(2);
		String email = rs.getString(3);
		Integer gender = rs.getInt(4);
			
		Employee employee = new Employee();
		employee.setId(id);
		employee.setLastName(lastName);
		employee.setGender(gender);
		employee.setEmail(email);
			
		return employee;
	}
	return null;

获取多行记录

	待补充...

你可能感兴趣的:(JDBC)