电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

oracle伪列以与伪表

oracle伪列以与伪表_第1页
1/15
oracle伪列以与伪表_第2页
2/15
oracle伪列以与伪表_第3页
3/15
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 确定了每条记录是在 Oracle 中的哪一个数据对象,数据文件、块、行上。 ROWID 的格式如下: 数据对象编号 文件编号 块编号 行编号 OOOOOO FFF BBBBBB RRR 由 data_object_id# + rfile# + block# + row# 组成,占用 10 个 bytes 的空间, 32bit 的 data_object_id#, 10 bit 的 rfile#, 22bit 的 block#, 16 bit 的 row#. 所以每个表空间不能超过 1023 个 数据文件。四、RowID 的应用 1。准备数据: 当试图对库表中的某一列或几列创建唯一索引时, 系统提示 ORA-01452 :不能创建唯一索引,发现重复记录。 /*conn scott/tiger Create table empa as select * from emp; (为以下演示)插入重复记录--创建一个表createtable dupCityInfoasselect * from cityInfo--制造重复...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

oracle伪列以与伪表

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部