ruwNum、rowId的区别

时间:2021-03-11 20:53:12   收藏:0   阅读:0

OraclerowNumrowId的区别:

rownum,rowid都叫伪列。 但是,rownum是逻辑上的编号,且其值总是从1开始,每行的rounum不是固定的。而rowid物理编号。若数据库文件没有移动,则每行的 rowid一般是固定不变的。

rownum是动态的,也就是必须先有查询到的结果集,然后再给这个结果集加上一个列,比如给结果集中的第一条数据的rownum的值为1

同rownum伪列不同的是,rowid是物理存在的,rowid是一种数据类型,它使用基于64为编码的18个字符来唯一标识一条记录物理位置的一个ID,类似于Java中一个对象的哈希码,都是为了唯一标识对应对象的物理位置,rowid虽然可以在表中进行查询,但是其值并未存储在表中,所以不支持增删改操作。

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!