日期:2014-05-17  浏览次数:20461 次

DataSet和DataTable的区别?
请问DataSet和DataTable的具体区别是什么?哪个性能更好一些?为什么?
麻烦高手解答一下,非常感谢!

------解决方案--------------------
把DataSet看成EXCEL文件。
把DataTable看成EXCEL文件中的一个SHEET

这个就是DataSet 与 DataTable 的联系与区别。

同等情况下,DataTable占用内存比DataSet少。
------解决方案--------------------
硬要讲性能。那是datatable比dataset占的资源少
------解决方案--------------------
dataset是datatable的集合
------解决方案--------------------
因为dataset是datatable的集合。所以占的资源会多点!
------解决方案--------------------
DataSet是一个或多个DataTable的集合,除此之外,DataSet还可以保存表与表之间的关系。
------解决方案--------------------
dataset 是内存中的数据库,datatable 是 dataset 中的数据表
------解决方案--------------------
探讨
引用:
把DataSet看成EXCEL文件。
把DataTable看成EXCEL文件中的一个SHEET

这个就是DataSet 与 DataTable 的联系与区别。

同等情况下,DataTable占用内存比DataSet少。

很好的比喻

------解决方案--------------------
dataSet 里面 可以有多个 datatabe
比如 dataSet.tables[0]
一个存储过程返回两个结果集就可以用到
dataSet.tables[0].XX
dataSet.tables[1].XXX
------解决方案--------------------
DataTabe 只是 DataSet 中的一个数据表而已.
 
 一个DataSet 可以包括多个 DataTabe
------解决方案--------------------
DataSet可以看成是DataTable的集合,当然DataSet除了DataTable外还有DataRelation等.
通过ds.tables.add(dt)来向dataset中添加datatable
------解决方案--------------------
DataTable 是大杯子
DataSet 是裝大杯子的盒子
------解决方案--------------------
DataSet是仓库。而dataTable是仓库中的一个小库房。
datatSet包含dataTable。
至于性能嘛。要看你在什么情况下用了。
------解决方案--------------------
dataset ds=new dataset();
ds.tables[0]=datatable