DataTable行限制

时间:2012-03-02 10:50:34

标签: c# c#-4.0

上午,

关于以下引用,此限制是否与有多少列无关? (我假设没有,但它没有在任何地方明确说明。)如果它与列数相关联,你如何计算你没有超过这个限制?

  

要向DataTable添加行,必须首先使用NewRow方法返回新的DataRow对象。 NewRow方法返回一个包含DataTable模式的行,因为它由表的DataColumnCollection定义。 DataTable可以存储的最大行数是16,777,216。有关更多信息,请参阅向DataTable添加数据。

"Link to where quote was taken from."

感谢您的帮助。

3 个答案:

答案 0 :(得分:5)

我希望这个限制(2 24 )与列数无关。我希望它内部只有一个32位整数用于表示行计数为24位,8位用于标志或类似的东西。

在实践中,1600万行将需要时间来填充和批次内存...如果您有可能达到该限制,你应该重新思考如何开始访问数据。

答案 1 :(得分:0)

它没有链接到列数,除非你的内存有一个上限,所以如果你有这么多列你不能将行存储在内存中,你可能会出现内存不足的错误。 / p>

答案 2 :(得分:0)

在添加新行之前,您可以使用DataTable.Rows.count检查当前行数