oracle 的伪列以与伪表 oracle 系统为了实现完整的关系数据库功能,系统专门提供了一组成为伪列(Pseudocolumn)的数据库列,这些列不是在建立对象时由我们完成的,而是在我们建立时由 Oracle 完成的
Oracle 目前有以下伪列:一、伪列: CURRVAL AND NEXTVAL 使用序列号的保留字 LEVEL 查询数据所对应的层级 ROWID 记录的唯一标识 ROWNUM 限制查询结果集的数量二、伪表DUAL 表该表主要目的是为了保证在使用 SELECT 语句中的语句的完整性而提供的
一般用于验证函数
例如:selectsysdate,to_char(sysdate,'yyyy-mm-dd HH24:mm:ss') from dualOracle 伪列 RowID一、什么是伪列 RowID
1、首先是一种数据类型,唯一标识一条记录物理位置的一个 id,基于 64 位编码的 18 个字符显示
2、未存储在表中,可以从表中查询,但不支持插入,更新,删除它们的值
二、RowID 的用途1,在开发中使用频率应该是挺多的,特别在一些 update 语句中使用更加频繁
所以oracle ERP 部份的视图都会加入 rowid 这个字段
在一些 cursor 定义时也少不了加入 rowid
但往往我们在开发过程中,由于连接的表很多,再加上程序的复制,有时忽略了 rowid 对应的是那一个表中 rowid,所以有时过程出错, 往往花上很多时间去查错,最后查出来既然是 update 时带的 rowid 并非此表的 rowid,所以在发现很多次的错误时,重视 rowid 起来了,开发中一定要注意 rowid 的匹配2,能以最快的方式访问表中的一行
3,能显示表的行是如何存储的
4,作为表中唯一标识
三,RowID 的组成rowid 确定了每条记录是