datareader datatabel dataset 这三个的区别是什么啊?
datareader datatabel dataset 这三个的区别是什么啊?尤其是dataset与datatable之间的区别,请哪位高手指点一二
[解决办法]
DataSet是一个DataTable的集合,而DataView是DataSet中DataTable的自定义视图。DataSet,数据集,一般包含多个DataTable,用的时候,dataset["表名"]得到DataTable ;DataSet用来处理数据存储中的实际数据。它表示一个数据缓存,具有类似数据库的行为。它包含表、列、关系、约束和数据。ataReader用来从数据库返回只读、只进数据流。DataAdapter对象是用来创建和初始化各种表的工具。它允许在DataSet对象和源数据存储区之间检索和存储数据。它负责从物理存储区中取数据以及将数据存入数据表和关系。
[解决办法]
datareader 结合Command的ExecuteReader方法获得数据库中的数据。
DataSet为数据集,相当与一个临时的数据库,DataTable就相当与数据库中的表。
结合起来用的好处是一次性将需要的数据取出,而后直接对DataSet操作就可以,不必要
再对数据库直接操作,减少对数据库的操作,复用性和灵活性是相当的强。
个人理解,望高手参与点评!!
[解决办法]
通俗来讲datareader是返回的一个高效的,只进只读的数据流,无法对查询数据进行修改;而dataset可以看做是内存当中的数据库,可对其中数据进行修改,而关系型数据库里数据都是以表的形势存放的,datatabel刚好可以看做dataset中的数据表。在内存当中可以存放dataset,也可以单独存datatabel。