没办法,只能多次查询,查询结果为大量数据你把结果集保存下来是不现实的,少量数据你保存下来又没必要。我一般都是每次都去查询,但查询的时候不是取全部数据而是只取当前页需要的数据。用limit和top之类的SQL语句,比如:MySQL:查询满足条件的第11~20跳记录
Select * from mytable where id>10 limit 11,20
SQL Server用Top也可以实现此功能。