讨论一下insert、update、delete的速度

[复制链接]
查看11 | 回复6 | 2005-10-30 17:05:33 | 显示全部楼层 |阅读模式
同一个表,操作同样的行数,在其他条件均相同的情况下,insert、update、delete哪个速度快?哪个速度慢?
我认为,insert、delete差不多,insert写回滚信息最少,但需要分配新空间,写新行;delete写回滚信息较多。update速度最快。
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
speed
insert>update>delete
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
why?
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
但回滚段信息基本是这样的顺序的:insert>update>delete
insert的时候还考虑到freelist的个数,碎片,并发还是单进程……
不能一概而论啊
update还要看是否存在行迁移……
……
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
还要考虑索引的因素吧?
索引会使insert的速度减慢,而有可能提高update和delete的速度。
其他条件相等是什么含义。
一个表中用10万数据,那么insert一条数据不用指定条件,update或delete一条数据必须指定条件。怎样才算是条件相等呢?
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
还有一个原因是update时会锁定数据行吧?如果很多用户同时update一个数据,用instert 就会显得很快。
我是指用update和instert 可以达到同样的结果的情况下。
我不确定。请大师们多多指教!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行