比如一datatable是要load学生档案表,现在先使用"select * from 学生档案 where 班级=1"语句load了一班数据,又使用"select * from 学生档案 where 班级=2"语句load了二班数据,现要重新load一班数据而不变动datatable中二班的数据,请问如何处理?
我的处理是使用dataview过滤DataView.RowFilter ='班级=1',逐个将dataview中的记录delete,DataView.Delete(i);再使用datatable.AcceptChanges ();然后才使用"select * from 学生档案 where 班级=1"语句重新load一班数据.不知各位还有更好的办法吗?

1  我用的学生档案和班级档案只是一个比喻,如有一千个班级,不可能用一千个datatable
2  因为有一千个班级(而每个班有100名学生),所以更加不可能用一条语句读一千个班数据(会让客户端等到花儿也谢了),只能是需要哪个班数据就读哪个班,而且已经从数据库读到datatable的班级的学生档案只要不要求刷新,就放在datatable中不变化.