update语句直接执行与写在存储过程中执行性能差别很大,为什么呢?
10万条数据,每次批量更新50条:
update:
1、直接使用update语句进行batch update,平均每次耗时100ms
2、将update语句写到存储过程中,调用存储过程batch update,平均每次11ms
insert:
1、直接使用update语句进行batch insert,平均每次耗时9ms
2、将insert写入存储过程batch insert,平均每次耗时11ms
为什么update会出现如此巨大的差别呢?
相关推荐
mysql update语句的执行过程详解
以前有过一篇关于MySQL查询语句的执行过程,这里总结一下update语句的执行过程。由于update涉及到数据的修改,所以,很容易推断,update语句比select语句会更复杂一些。 1,准备 创建一张test表 CREATE TABLE `test` ( `id` int(11) NOT NULL AUTO_INCREMENT, `c` int(11) NOT NULL DEFAULT '0' COMMENT '数值', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='\u6d4b\u8bd5\u8868'; 插入三条数据
执行一条sql语句update多条记录实现思路
如果你想更新多行数据,并且每行记录的各字段值都是各不一样,你会怎么办呢?本文以一个示例向大家讲解下如何实现如标题所示的情况,有此需求的朋友可以了解下
SQL Server中存储过程比直接运行SQL语句慢的原因
1. 存储过程只在创造时进行编译即可,以后每次执行存储过程都不需再重新编译,而我们通常使用的SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。 2. 经常会遇到复杂的业务逻辑和对数据库的操作,这个时候就会用SP来封装数据库操作。当对数据库进行复杂操作时(如对多个表进行 Update,Insert,Query,Delete时),可将此复杂操作用存储过程封装起来与数据库提供的事务处理结合一起使用。可以极大的提高数据 库的使用效率,减少程序的执行时间,这一点在较大数据量的数据库的操作中是非常重要的。在代码上看,SQL语句和程序代码语句的分离,可以提高程序代码的 可读性。
php+MySQL判断update语句是否执行成功的方法
update语句是PHP+MySQL中常用的操作,判断update语句是否执行成功是其中非常重要的一个环节。本文就以实例展示了php+MySQL判断update语句是否执行成功的方法。分享给大家供大家参考之用。具体方法如下: 代码一: $rs=MySQL_query($sql); if(mysql_affected_rows()) echo "sql执行成功"; else echo "sql执行失败"; 代码二: <?php /* 连接数据库 */ mysql_pconnect("localhost", "mysql_user", "mysql_passWord") or die
update 语句优化update 语句优化update 语句优化
update 语句优化


