在数据库中插入许多记录的最快方法

ion*_*ion 4 c# sql-server sql-server-2005

我使用2种方法在数据库中插入记录(100,1.000,10.000和100.000)(是没有主键且没有索引的表)

  • 使用for和逐个插入
  • 使用存储过程

当然,使用存储过程更好.我的问题是:1)如果我使用索引将操作更快和2)是否有任何其他方式来插入

PS:我使用ibatis作为ORM,如果这有任何区别

Win*_*ith 5

看看SqlBulkCopy.

它专为快速插入批量数据而设计.我发现使用TableLock选项并设置大约10,000的BatchSize时速度最快,但最好用自己的数据测试不同的场景.

您可能还会发现以下内容非常有用.

SQLBulkCopy性能分析