多个返回结果的 ResultSet 读取 问题

   * 在sql server 2005 中 想要获取 一个表的信息,包括字段名`类型`长度等信息时,可以调用 系统的存储 过程
   * exec sp_help 表名 来获得,
   * 但返回的结果是多个.例 :

多个返回结果的 ResultSet 读取 问题_第1张图片

 

 用以前的方法只能读取到第一个结果 :

ResultSet resultSet1 =  statement.executeQuery();

当有多个结果 返回时 可以 这样写:

 

		String sql = "exec sp_help 表名";
		
		// 获取Connection
		Connection conn = DbManage.getDataSource().getConnection();
		PreparedStatement statement = null;
		ResultSet resultSet = null;

		statement = conn.prepareStatement(sql);
		// 执行
		statement.execute();

		// 在这里调用 获取更多的结果,调用一次相当于读取一个返回的结果
		statement.getMoreResults();

		// 再取出结果集
		resultSet = statement.getResultSet();

然后再对ResultSet 正常操作就可以 了

如果 想取下一个结果 只需要再调用

	// 在这里调用 获取更多的结果,调用一次相当于读取下一个返回的结果
集	statement.getMoreResults();


 

此时再
// 再取出结果集
  resultSet = statement.getResultSet();

就可以 了

 

你可能感兴趣的:(多个返回结果的 ResultSet 读取 问题)