数据批量校验插入,因为每条记录都需要和数据库内已经存在的数据做比对,比对OK的进行插入,比对不OK的生成错误信息,等全部执行完后导出一个excel文件。
原来的时候是用la的校验方式进行逐条校验,但是效率非常慢,因为每插入一条数据都要去执行sql语句校验一下。
后来把关联的数据一次性拉出来在php内进行校验,筛选可以插入的数据生成数组,用insert一次性插入。
效率是快了但是会不会有什么问题啊?
数据批量校验插入,因为每条记录都需要和数据库内已经存在的数据做比对,比对OK的进行插入,比对不OK的生成错误信息,等全部执行完后导出一个excel文件。
原来的时候是用la的校验方式进行逐条校验,但是效率非常慢,因为每插入一条数据都要去执行sql语句校验一下。
后来把关联的数据一次性拉出来在php内进行校验,筛选可以插入的数据生成数组,用insert一次性插入。
效率是快了但是会不会有什么问题啊?
1 回答4.1k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
2 回答2.3k 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
2 回答2.2k 阅读
1 回答621 阅读✓ 已解决
802 阅读
这种优化方法很常见,减少了应用程序与mysql的交互次数以及sql语句的条数,要知道每次交互以及每条sql语句的解析一定程度上都会对mysql的性能造成一定的损耗,因此,这种方法提升了mysql系统性能,转而把压力放在了应用程序的具体运算中,数据量不大并且运算简单的时候很好的提升系统系能,但是也要防止数据量很大及运算复杂的时候内存消耗过大。。
具体的你可以自己测试一下,我说的也不一定绝对正确,测试很有必要,只要适合自己的业务和架构就好