我是靠谱客的博主 壮观身影,最近开发中收集的这篇文章主要介绍用存储过程执行Insert和直接执行Insert的性能比较,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

<script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>

<script type="text/javascript"> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>

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

存储过程为:

CREATEPROCEDURE# InsertIPData
@StartIPnvarchar(50),
@EndIPnvarchar(50),
@Countrynvarchar(50),
@Localnvarchar(100)
AS
InsertINTO[IPWry]VALUES(@StartIP,@EndIP,@Country,@Local)

Insert语句为:

InsertINTO[IPWry]VALUES(@StartIP,@EndIP,@Country,@Local)


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

结果如下:

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


测试环境:WindowsServer2003,SQLServer2000(v8.0.818),1.1.4322sp1(Winform);
         Pentium42.0GHz,512MBRAM

   本结果说明,用 存储过程执行大量 Insert语句比 直接执行 Insert语句速度大约快10%。
<script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
<script type="text/javascript"> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>

最后

以上就是壮观身影为你收集整理的用存储过程执行Insert和直接执行Insert的性能比较的全部内容,希望文章能够帮你解决用存储过程执行Insert和直接执行Insert的性能比较所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(37)

评论列表共有 0 条评论

立即
投稿
返回
顶部