oracle为每个表的每一条记录都赋予了一个唯一的标识号rowid
它是伪列,在定义表结构时并不声明它,但是系统自动建立.
用desc查看的表结构的时候见看不到该字段.
用rowid来进行update,delete等操作时速度最快.
而且oracle7和oracle8及以后版的rowid不同:oracle 7 的rowid由三部分组成:
block.row.file
BBBBBBBB.RRRR.FFFF
文件块号.块中的行号.文件的绝对号oracle 8    8i       9i的rowid由四部分组成:
OOOOOOFFFBBBBBBRRR
OOOOOO:数据对象号,表示数据库段的编号
FFF表在空间中的相对文件号
BBBBBB:在一个文件中的块号
RRR块中行的位置号
select rowid from tablename;
rowid数据类型的使用:
rowidtochar:把rowid转换成char类型.select rowidtochar(a.rowid) from testa a where rownum<=1
AABj3OAEoAAAHpjAAAselect chartorowid('AABj3OAEoAAAHpjAAA') from dual
AABj3OAEoAAAHpjAAA