042的147关于undo

[复制链接]
查看11 | 回复9 | 2009-3-5 17:18:57 | 显示全部楼层 |阅读模式


42_147_1.jpg (124.1 KB, 下载次数: 3)
下载附件
2008-7-28 17:30 上传

delete, update, insert一条记录产生的undo数据块大小,有差别吗?
很疑惑!
回复

使用道具 举报

千问 | 2009-3-5 17:18:57 | 显示全部楼层
关于回滚段的数据,如果是delete操作,则回滚段将回记录整个行的数据;如果是update,则只记录被修改了的字段的变化前的数据(前映像);如果是insert,则只记录插入记录的rowid。所以,假如commit,那么回滚段中简单标记该事务已经提交;假如rollback,则操作是 delete的话,把回滚段中的数据重新写回数据块,操作是update的话则把变化前的数据修改回去,操作是insert的话则根据rowid把该记录删除。这个过程是保障事务的完整性,保障数据不会丢失。
回复

使用道具 举报

千问 | 2009-3-5 17:18:57 | 显示全部楼层
改变的都是一行,DELETE是一正行的数据,UPDATA只是改变前的数据,INSERT只是一个ROWID,所以,当然是 DELETE
回复

使用道具 举报

千问 | 2009-3-5 17:18:57 | 显示全部楼层
啊 楼主一定要好好看看SG SG上说的很详细
回复

使用道具 举报

千问 | 2009-3-5 17:18:57 | 显示全部楼层
delete是一行的数据 最多
update 是修改的数据中间
insert是对应ROWID 最小
回复

使用道具 举报

千问 | 2009-3-5 17:18:57 | 显示全部楼层


1.JPG (17.71 KB, 下载次数: 4)
下载附件
2008-7-28 23:33 上传

sg上没找到,不过在其他书上找到的。我记得就是DELETE占用得多的。
回复

使用道具 举报

千问 | 2009-3-5 17:18:57 | 显示全部楼层
谢谢大家,明白了
回复

使用道具 举报

千问 | 2009-3-5 17:18:57 | 显示全部楼层
SG上没看到阿,我再仔细看看,
回复

使用道具 举报

千问 | 2009-3-5 17:18:57 | 显示全部楼层
sg上有 我见过 请楼主仔细看看。
回复

使用道具 举报

千问 | 2009-3-5 17:18:57 | 显示全部楼层
说有的贴出来吧,我也看的是没有的
回复

使用道具 举报

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

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行