数据库 一次 update 100条,和一次update 1条,一共update100次,哪个快
5个回答
展开全部
当然是1次性来的快啊,程序员一般最讨厌用游标操作数据库了,非常慢,因为一次update就是一次I/O操作,I/O操作是非常耗时间的, 而且还有读取索引,如果没有索引就要扫描全表,我们往往操作的数据都是在附近的,一个I/O操作往往是把附近几个block的数据一起读进缓存,这样效率非常高,一次只找一条,每次都是触发一遍I/O,非常之不可取
追问
你好,
具体情况是这样的,
在EXEC SQL select ... from .. for update 出来有100条记录,程序处理完后要更新这100条记录的状态,有两种方法。
一是用查询时相同的条件去更新这100条记录。
二是根据每条记录的关键字去一条一条的更新。循环100次。
哪个效率高一点?
写代码如果这样循环100次去更新会不会很搞?
如果1000条呢?
追答
一是用查询时相同的条件去更新这100条记录。
当然是这种了,如果更新的内容都是一样的话,当然是一次性更新效率高啊
展开全部
类似的问题有:一个1次的循环,循环中做100件事。还有一个100次的循环,每个循环中做一件事。哪个快?很明显是1次循环的。
因为每次操作都会有锁表这些系统操作,如果分100次做,那么锁表和解锁的操作就需要各做100次。而如果集中在1次中完成,就各需要1次。那么你说哪个快?
因为每次操作都会有锁表这些系统操作,如果分100次做,那么锁表和解锁的操作就需要各做100次。而如果集中在1次中完成,就各需要1次。那么你说哪个快?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以用在事务两端加上select sysdate from dual;比较一下啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一次性来的快
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没有感觉,可以忽略不计!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询