只是想知道结构化表插入和批量复制之间是否存在任何性能差异。 在我开始实施之前可能有任何经验或想法。我使用Spring.net进行数据库层调用。
Sql批量插入
using (SqlBulkCopy bulkCopy = new SqlBulkCopy(this.connectionstring)
{
bulkCopy.DestinationTableName = "BulkDataTable";
bulkCopy.WriteToServer(dataTable);
}
Sql结构化类型插入 创建一个映射到数据表的数据类型,并传递数据表,其中包含要批量插入的所有行。
DataTable dataTable = this.dataTableRef.Value.Clone();
// add rows the the binary data table
SqlParameter insertParam = new SqlParameter();
insertParam.ParameterName = "DataTableInput";
insertParam.SqlDbType = SqlDbType.Structured;
insertParam.TypeName = "dbo.DataTableType";
insertParam.Value = dataTable;
insertParams.AddParameter(insertParam);
AdoTemplate.ExecuteNonQuery(CommandType.Text, "INSERT INTO <table_name> SELECT * FROM @DataTableInput", insertParams);