ResultSet:结果集对象,封装查询结果
next();
getXxx(参数):获取数据
xxx:代表数据类型 如: int getInt(), String getString()
参数:
int :代表列的编号,从1开始, 如:getString(1)
String:代表列名称。如 : getDouble("balance")
java代码实例:
Statement statement = null; Connection connection = null; ResultSet re = null; try { Class.forName("com.mysql.cj.jdbc.Driver"); String sql = "select * from account"; connection = DriverManager.getConnection("jdbc:mysql:///a2", "root", "root"); statement = connection.createStatement(); re = statement.executeQuery(sql); re.next(); int anInt = re.getInt(1); String name = re.getString("name"); double aDouble = re.getDouble(3); System.out.println(anInt+"--"+name+"--"+aDouble); } catch (ClassNotFoundException | SQLException e) { e.printStackTrace(); }finally { if (re !=null){ try { re.close(); } catch (SQLException e) { e.printStackTrace(); } } if (connection !=null){ try { connection.close(); } catch (SQLException e) { e.printStackTrace(); } } }
JDBC各类详解_ResultSet_遍历结果集
bool next(): 游标向下移动一行,判断当前行是否是最后一行末尾(是否有数据)如果是,则返回false,如果不是则返回true
注意:
使用步骤
游标向下移动一行
判断是否有数据
获取数据
java代码实例:
Statement statement = null; Connection connection = null; ResultSet re = null; try { Class.forName("com.mysql.cj.jdbc.Driver"); String sql = "select * from account"; connection = DriverManager.getConnection("jdbc:mysql:///a2", "root", "root"); statement = connection.createStatement(); re = statement.executeQuery(sql); while (re.next()){ int anInt = re.getInt(1); String name = re.getString("name"); double aDouble = re.getDouble(3); System.out.println(anInt+"--"+name+"--"+aDouble); } } catch (ClassNotFoundException | SQLException e) { e.printStackTrace(); }finally { if (re !=null){ try { re.close(); } catch (SQLException e) { e.printStackTrace(); } } if (connection !=null){ try { connection.close(); } catch (SQLException e) { e.printStackTrace(); } } }