数据表: Test(ID int iddentity(1,1), Name nvarchar(50))
操作系统:Windows 2003 数据库:SQL Server 2008 Express
CPU: T4300 2.1G
内存:4G
测试方式1:
循环10000次再统一事务插入
for (var i = 0; i < 10000; i++){
TDC.Test.InsertOnSubmit(new Test() { Name = DateTime.UtcNow.ToString() });
}
TDC.SubmitChanges();
耗时:8909毫秒
测试方式2:
循环10000次分别插入
for (var i = 0; i < 10000; i++){
TDC.Test.InsertOnSubmit(new Test() { Name = DateTime.UtcNow.ToString() });
TDC.SubmitChanges();
}
耗时:583392毫秒
测试方式3:
直接写SQL插入
using (DbExecutor db = NewExecutor()){
for (var i = 0; i < 10000; i++){
db.ExecuteNonQuery(System.Data.CommandType.Text, "INSERT INTO Test Values(@Name)", NewParam("@Name", DateTime.UtcNow.ToString()));
}
}
耗时:6790毫秒
测试方式4:
使用SP.Studio 封装的Add方法
using (DbExecutor db = NewExecutor()){
for (var i = 0; i < 10000; i++){
new Test() { Name = DateTime.UtcNow.ToString() }.Add(db);
}
}
耗时:8100毫秒
测试方式5:
使用SP.Studio 封装的Add方法(使用事务)
using (DbExecutor db = NewExecutor(IsolationLevel.ReadCommitted)){
for (var i = 0; i < 10000; i++){
new Test() { Name = DateTime.UtcNow.ToString() }.Add(db);
}
db.Commit();
}
耗时:4843毫秒
------------------------
SP.Studio 基于.NET 4.0的开源轻量级ORM开发框架,以提升开发效率为目的。 交流QQ群:1809084
浙公网安备 33010602011771号