• 批量insert数据


    近在做公司的考勤管理软件中,每天全部员工的打卡记录有好几千笔
    每次Insert into到数据库的时候都要几十秒,在网上找了下批量Insert的方法:

    发现单条insert和批量insert语句之间的性能差异很大。 for (int i = 0; i < 10000; i++){ insert into table(columnA, columnB) values(v1, v2); } 这个语句同下面的语句: insert into table(columnA, columnB) values (v1, v2), (v1, v2), (v1, v2), (v1, v2), (v1, v2),
     (v1, v2), ... (v1, v2)); 性能差异很大!下面的语句要比上面快好几个数量级!

    可我在测试的时间下面的insert语句在Sql Server 里用不了(不知道作者是不是在其它数据库里用的,还是我的RPWT),只好另外自己想方法:

    Insert into record(EmployeeID,Date,Time)
    Select '917041','20070304','07:40' UNION   ALL
    Select '917042','20070304','07:40' UNION   ALL
    Select '917043','20070304','07:40'
    …………

    相比之前的单独用Insert into快了那么一点点,在网上也找不到什么更好的方法,只能作罢


    最新消息据说SQL SERVER 2008将会支持上面说的写法了
  • 相关阅读:
    Kubernetes中部署MySQL
    内置函数-format()
    Jenkins-deploymnt
    一次遇到too many open files的解决详情
    一次nginx问题记录
    kickstart自动化安装系统
    Maven —— 命令行清除编译打包
    CURL 发送POST请求
    mysql的my.cnf配置参考
    利用nginx实现生产和灰度环境流量切换
  • 原文地址:https://www.cnblogs.com/elzero/p/817969.html
Copyright © 2020-2023  润新知