欢迎光临
我们一直在努力

用存储过程执行Insert和直接执行Insert的性能比较-数据库专栏,SQL Server

建站超值云服务器,限时71元/月

    最近写一个程序将ip与所在地区的列表有纯文本文件导入到数据库中,一开始使用的是直接用sqlcommand执行insert语句,后来知道了sql server能够对存储过程进行优化,省去了对语句进行分析的时间,比直接用insert语句要快一些。我就把insert语句放在了一个临时存储过程中,用这个临时存储过程进行insert操作,并粗略测试了两者执行的时间。

存储过程为:

create procedure #insertipdata
@startip nvarchar(50),
@endip nvarchar(50),
@country nvarchar(50),
@local nvarchar(100)
as
insert into [ipwry] values(@startip, @endip, @country, @local)

insert语句为:

insert into [ipwry] values(@startip, @endip, @country, @local)

    执行此存储过程用的是sqldataadapter的update,总共180485条记录。

结果如下:

                    第一次        第二次        第三次        平均
直接执行insert      133秒         132秒         135秒         133.3秒
存储过程            121秒         122秒         120秒         121秒

测试环境:windows server 2003, sql server 2000(v8.0.818), framework 1.1.4322 sp1(winform);
          pentium 4 2.0ghz, 512mb ram

    本结果说明,用存储过程执行大量insert语句比直接执行insert语句速度大约快10%。

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 用存储过程执行Insert和直接执行Insert的性能比较-数据库专栏,SQL Server
分享到: 更多 (0)

相关推荐

  • 暂无文章