.net - ADO.NET 和 SQLBULKCOPY - 要插入的最大记录限制?

标签 .net sql ado.net

ADO.net 一次可以在数据库中插入的记录数量是否有限制?我们想与 sqlbulkcopy 一起工作但是开发人员告诉我们 ADO 一次不会插入超过 1000 条记录,所以 sqlbulkcopy批量插入 10000 条记录是没有用的。这是真的?是否sqlbulkcopy每次插入大批量 1000 直到 10000?

我不认为 ADO 有最大数量的记录,但他们是开发人员,所以我不确定。

最佳答案

这不是真的。 其实你要 BatchSize 如果你想要一个属性,因为默认是 0 ,或者没有限制。

此外,在查看 WriteToServerInternal 之后SqlBulkCopy的方法类,这是唯一会限制单个批次中发送的行数的东西。

最后,即使您在 中发送了它们批次 1,000 行,可以插入的总行数没有限制。好吧,除了运行机器的内存,如果它是通过 DataTable 完成的例如。但是,如果该数据通过 SqlDataReader 从一台服务器复制到下一台服务器,还有无整体限制可以以任何形状或形式达到。

关于.net - ADO.NET 和 SQLBULKCOPY - 要插入的最大记录限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17701255/

相关文章:

sql - 如何从子查询返回两个字段

oracle - TransactionScope 和存储过程?

c# - 如何防止 ScintillaNET 控件自动滚动?

mysql - 将 2 个表连接在一起 - 添加值并按特定 ID 分组

c# - 以编程方式将规则添加到 AVG Firewall

SQL 查询 - 从两个表中获取两列的计数

c# - SqlDataReader 为 int 字段返回空白而不是 null

c# - 从 SqlCommand 对象获取生成的 SQL 语句?

c# - 如何将 IEnumerable<t> 或 IQueryable<t> 转换为 EntitySet<t>?

c# - ObservableCollection<T> 中的 block 重入