关于excel导入数据到数据库的总结

1. 提前规范好excel的格式,方便获取excel的数据

2. 尽可能的避免循环嵌套

3. 如果存在需求要从数据库获取数据回来跟excel中的数据进行对比,应尽可能以此就获取回来然后在进行对比,而不是循环获取来对比,建立数据库链接是一个很耗时间的操作。

4. 数据插入数据库使用一次批量插入的方法,不能使用一条条循环插入的方法,因为建立数据库链接是一个很耗时间的操作

5. 如果数据量很大,假如有3000条,这个时候就应该将3000条切开成几个数组循环批量插入,比如切成10个数组,每个数组300条,牺牲一点时间减轻服务器的压力。

6. 使用事务时候需要注意,批量插入可能会使事务失效(假如你插入300条一次,到了第200条失败了,这个时候你的事务可能没办法将已经插入的回滚,laravel框架查询构建器的insert方法就存在这种问题,不确定其它框架是否存在这个问题),这个问题可以在每一次批量插入的数据中加一个唯一的批次号,然后在整个插入的过程中如果存在失败,则将刚才生成的批次号(可能有多个了)传到数据库执行delete操作,即可实现手动事务回滚。

 

转载于:https://www.cnblogs.com/cyclzdblog/p/8316147.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值