数组和数据表之间的区别是什么?

3

所以,我一直在努力更好地理解这两者之间的区别,但我只能找到关于DataSets和DataTables之间的差异的信息 - 一个单一的数组只能包含一种数据类型,而从我所了解的来看,DataTables基本上是通用的多维数组,并且它与存储在内存中的数据源具有1:1的关系。这准确吗?DataTables只是通用的多维数组,还是我错过了一些根本性的区别?


DataTables 不只是一个通用的多维数组。 - Austin Salonen
DataTable 其实是一个相当复杂的类。http://msdn.microsoft.com/zh-cn/library/system.data.datatable.aspx - Kyle
@Kyle 谢谢你提供的链接,我会仔细阅读的。 - DaneEdw
2个回答

11

一个 DataTable 在内存中模拟数据库表。这种类型可以跟踪更改等操作,以便与数据库同步。列(维度)可以通过索引或名称进行引用。

DataSet 可以保存这些表的集合以及它们之间的关系(参照完整性约束)。

array 不具备上述功能。


3

DataTable有点像多维数组,因为它是一种内存数据存储方式,具有特定的“大小”,但还有其他重要的功能。例如,每个“列”都有名称信息和特定类型的信息,有更改跟踪以与数据存储同步,行可以存储空值等。

DataSet基本上是在内存中保存的整个“数据集”(即多个DataTable)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接