1、通过查询,JDBC是将所有的查询结果一次性放到ResultSet中,还是一次只放一定数目的记录?例如,查询结果为2000条数据,JDBC是一次性将2000条数据放到结果集中,还是分批放置呢?
2、当通过ResultSet.next(),移动结果集指针时,此时是否还与数据库发生交互?
Answer :首先结果集resultset在你的java程序处。其中有个fetchsize设置,这个表示每次从数据库处取多少条记录到resultset.
交互,如果1个查询有10000条记录,resultset中只有fetchsize条,当next时还会在一定时机去交互
Answer :当通过ResultSet.next(),移动结果集指针时,此时是否还与数据库发生交互?
不发生交互,数据库执行完查询后,已经把查询结果交给ResultSet了,以后的操作,和数据库无关。
Answer : 不是将查询结果一次性放到ResultSet中, 而是分批放入ResultSet中,一般情况下是每次10条记录. 当通过ResultSet.next(),移动结果集指针时,此时还会与数据库发生交互.