首页 > 代码库 > 能用rowid判断表中的记录的插入顺序吗?

能用rowid判断表中的记录的插入顺序吗?

能用rowid来判断一行的插入时间先后吗?

首先我查了一下empno为7934的rowid,然后将这行数据删除,之后往表中插入数据7000行。发现之前删除的位置被重用了。然后按照rowid排序输出empno,发现并不是从1到7000排序的。

如果删除了记录
那么,以后插入的记录就会用到以前的ROWID

 

技术分享
SQL> select rowid from emp where empno=7934;
ROWID
--------------------
AAAR3dAAEAAAACXAAN


SQL> delete emp where empno=7934;


SQL> commit;


begin
for i in 1..7000 loop
insert into emp(empno) values(i);
end loop;
end;
/

SQL> select empno from emp where rowid =AAAR3dAAEAAAACXAAN;

EMPNO
----------
2585


SQL> select empno from emp order by rowid;

...省略很多行。。。
EMPNO
----------
657
658
659
660
1
2
3
4
5
6
7
View Code

 

能用rowid判断表中的记录的插入顺序吗?