• Command对象传参效率测试


    在。net平台,普通的insert语句有两种写法,不带参数insert into test(c1,c2) values(var1,var2)和带参数insert into test(c1,c2) values(:c1,:c2),它们的执行效率如何呢?
    我一直以为两者类似,带参数只是类似占位符的功能,但今天同事提到传递参数类似java中的预编译功能,可以有效提高运行效率。
    做了个试验,代码如下:
    Code
    执行结果:
    10000记录:
    不传参数?5:46:19 15:46:34 15秒
    传参数:?5:50:51 15:51:01 10秒

    50000记录:
    不传参数  16:09:03 16:10:24 81秒
    传参数::16:15:43 16:16:36 53秒
    这只是2个参数的情况,如果参数很多会不会影响更大呢?

    10000记录,7个参数:
    不传参数:17:11:01 17:11:18 17秒
    传参数:17:13:46 17:13:59 13秒
    50000记录:7个参数:
    不传参数:17:19:02 17:20:25 1分23秒
    传参数:17:15:09 17:16:10 1分1秒

    居然差距不大。
    总结:1,向command对象传递参数既可以避免sql注入问题,也可以提高性能;
                2,做学问不能想当然,数据出真知。
  • 相关阅读:
    [2016北京集训试题15]项链-[FFT]
    [agc008E]Next or Nextnext-[dp+思考题]
    [agc011E]Increasing Numbers-[思考题]
    [2016北京集训试题14]股神小D-[LCT]
    [2016北京集训试题6]mushroom-[bitset]
    [2016北京集训试题6]魔法游戏-[博弈论-sg函数]
    [arc081F]Flip and Rectangles-[黑白染色]
    [arc072F]Dam-[单调队列]
    【CF787D】遗产(Legacy)-线段树-优化Dijkstra(内含数据生成器)
    【CF373C】计算袋鼠是愉快的(Counting Kangaroos is Fun)-贪心
  • 原文地址:https://www.cnblogs.com/malingbo/p/1567434.html
Copyright © 2020-2023  润新知