谁能给出使用BatchSize和不使用BatchSize在OracleBulkCopy中的性能和行为的区别吗?目前,我没有指定BatchSize。我的BatchSize可能在100到200000之间。请建议最好的方法。
try
{
var columnMapping =
from table in orgTable.Columns.Cast<DataColumn>()
select
new OracleBulkCopyColumnMapping(table.ColumnName, table.ColumnName);
using (var bulkcopy
= new OracleBulkCopy(ConnectionString, OracleBulkCopyOptions.Default))
{
bulkcopy.DestinationTableName = GoldOrgTable;
foreach (var mapping in columnMapping)
bulkcopy.ColumnMappings.Add(mapping);
bulkcopy.BulkCopyTimeout = TimeOut.Value;
bulkcopy.WriteToServer(orgTable);
orgTable.Dispose();
}
return true;
}发布于 2012-12-09 15:53:17
最佳批次应设定在500~5000左右。
使用批量复制的好处是:
然而,它也有一些我们需要关注的缺点:
进一步讨论,您可以在以下网站找到它:01/OracleBulkCopyClass.htm#CHDCDEIA或Bulk Insert to Oracle using .NET
https://stackoverflow.com/questions/13788819
复制相似问题