1 ROWID的特性

(1)rowid是一个伪列,是用来确保表中行的唯一性,它并不能指示出行的物理位置,但可以用来定位行。

(2)rowid是存储在索引中的一组既定的值(当行确定后)。我们可以像表中普通的列一样将它选出来。(3)利用rowid是访问表中一行的最快方式。(4)rowid需要10个字节来存储,显示为18位的字符串。

2 ROWID的结构

rowid的组成结构为:

data object number(6位字符串) relative file number(3位字符串) block number(6位字符串) row number(3位字符串),如:AAAADeAABAAAAZSAAA

64编码的物理地址,编码字符是A-Z, a-z, 0-9, +,and/.

由4部分组成OOOOOOFFFBBBBBBRRR (obj#file#block#row#)

OOOOOO -–data object number

FFF –-表空间相对的数据文件号

BBBBBB –-块号

RRR ---行号

我们可以借助oracle提供的包dbms_rowid,来对rowid进行解析从而获取关于行的相关信息,这里你可以选择任何一个数据库中的表,如下所示:

SQL> get c:\rowid.sql

1 select

2 rowid,

3 dbms_rowid.rowid_object(rowid) obj_id,

4 dbms_rowid.rowid_relative_fno(rowid) df#,

5 dbms_rowid.rowid_block_number(rowid) blknum,

6 dbms_rowid.rowid_row_number(rowid) rowno

7* from scott.emp

SQL> r

1 select

2 rowid,

3 dbms_rowid.rowid_object(rowid) obj_id,

4 dbms_rowid.rowid_relative_fno(rowid) df#,

5 dbms_rowid.rowid_block_number(rowid) blknum,

6 dbms_rowid.rowid_row_number(rowid) rowno

7* from scott.emp

ROWID                  OBJ_ID        DF#     BLKNUM      ROWNO

------------------ ---------- ---------- ---------- ----------

AAAL+ZAAEAAAAAdAAA      49049          4         29          0

AAAL+ZAAEAAAAAdAAB      49049          4         29          1

AAAL+ZAAEAAAAAdAAC      49049          4         29          2

AAAL+ZAAEAAAAAdAAD      49049          4         29          3

AAAL+ZAAEAAAAAdAAE      49049          4         29          4

AAAL+ZAAEAAAAAdAAF      49049          4         29          5

AAAL+ZAAEAAAAAdAAG      49049          4         29          6

AAAL+ZAAEAAAAAdAAH      49049          4         29          7

AAAL+ZAAEAAAAAdAAI      49049          4         29          8

AAAL+ZAAEAAAAAdAAJ      49049          4         29          9

AAAL+ZAAEAAAAAdAAK      49049          4         29         10

AAAL+ZAAEAAAAAdAAL      49049          4         29         11

AAAL+ZAAEAAAAAdAAM      49049          4         29         12

AAAL+ZAAEAAAAAdAAN      49049          4         29         13

14 rows selected.

当如下情况发生时,rowid将发生改变:

(1)对一个表做表空间的移动后

(2)对一个表进行了EXP/IMP

oracle z中rowid,oracle 10g中的ROWID相关推荐

  1. oracle z中rowid,如何将索引块里面的rowid和表里面的rowid对应起来?

    问题: 1.如何将索引块里面的rowid和表里面的rowid对应起来? 验证如下,请各位大侠指正 建表 SQL> create table test(goodid char(8)); 插入记录 ...

  2. oracle 切割 rowid,Oracle中rowid的用法(全面)

    ROWID是数据的详细地址,通过rowid,Oracle可以快速的定位某行具体的数据的位置. ROWID可以分为物理rowid和逻辑rowid两种.普通的堆表中的rowid是物理rowid,索引组织表 ...

  3. 在Win7中安装Oracle 10g时检测报错的解决办法

    在Windows 7中安装Oracle 10g. 使用的Orcale版本是10g. 步骤1: 在Orcale官网上下载,下载地址为:http://download.oracle.com/otn/nt/ ...

  4. Oracle 10g中对resumable session的增强

    从9i开始,Oracle提供了一种避免因为space Error而导致事务异常的操作,那就是resumable.通常,DBA在日常工作中,往往忽略了对空间资源上的需求,比如一个大的事务所需要的temp ...

  5. oracle 10g中没有refhost.xml,解决win7 安装oracle10g的问题

    当你使用win7安装oracle10g,很可能显示相关oraparam.ini相关的异常,导致无法继续安装oracle10g,可以通过以下步骤方式来安装,至于安装oracle后的稳定性,目前无法认证, ...

  6. oracle10g数据库复制,oracle -10g 中Duplicate 复制数据库

    oracle --10g 中Duplicate 复制数据库 本次实验通过duplicate命令,在本机环境中创建一个复制数据库.目标数据库为hongye.复制数据库为catdb. 环境别名设置: al ...

  7. oracle10gasmcmd,ORACLE 10g中ASMCMD使用及ASM文件

    ORACLE 10g中ASMCMD使用及ASM文件XML DB访问 1.引言 自动存储管理(ASM)是Oracle数据库10g的新功能,它为数据库管理员提供了一个简单的存储管理界面,并且该界面在所有服 ...

  8. 在linux中安装oracle中文包,在Linux命令行下安装Oracle 10g

    Oracle 10g支持在命令行下用静默模式(Silent)安装,给那些没有安装图形界面的Linux系统提供了极大的便利. 下面以Fedora Core 6为例,介绍在命令行下安装OracleOrac ...

  9. oracle 11g sga max,oracle 10g 11g中的SGA_MAX_SIZE与SGA_TARGET参数

    oracle 10g中的SGA_MAX_SIZE与SGA_TARGET参数 sga_target是自动管理内存时使用的,这样你就不用设置DB_CACHE_SIZE,SHARED_POOL_SIZE等参 ...

最新文章

  1. GRNet网络:3D网格进行点云卷积,实现点云补全
  2. 独家 | Tableau小技巧之分离Box plot和Unit Histogram(附链接)
  3. spring mvc @RequestBody @ResponseBody 解析流程
  4. 第五章 软件下载与安装(二、VM安装Ubuntu16.4)
  5. [原]ImportError: No module named thrift.Thrift问题解决
  6. java自动生成类_自动生成优化的Java类专业知识
  7. Web服务器性能估算
  8. middle函数C语言,C语言函数调用栈(三)
  9. scrapyd远程连接配置
  10. nodejs 安装express
  11. jquery统计字数的小功能
  12. python aiompq集群_python操作memcached以及分布式
  13. firefox如何下载播放的视频
  14. hugo搭建个人博客
  15. DVD刻录机的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  16. 科比服务器型号,Ubuntu是NBA全明星科比
  17. php实现跑马灯闪亮,JavaScript_基于jquery实现的文字向上跑动类似跑马灯的效果,想实现一个类似跑马灯的效果, - phpStudy...
  18. 腾讯云账号注册方法介绍
  19. 调用第三方接口的方式(简洁版)
  20. 导致堆栈溢出的原因什么?

热门文章

  1. Shell脚本实现简单分割字符串
  2. JQUERY项目所用插件
  3. CI框架json无法Unicode转中文解决方案
  4. General error: 24374 OCIStmtFetch: ORA-24374: define not done before fetch or execute and fetch
  5. centos7重新加载服务的命令_Centos7 常用防火墙操作命令
  6. 台式机计算机删除,电脑c盘满了怎么清理 电脑c盘可以删除哪些文件
  7. android raw 引用,Android 资源-raw和assets
  8. 修身论文2000字_软考论文怎么写
  9. nginx: [emerg] duplicate “log_format“ name “main“ in /usr/local/phpstudy/vhost/sys/nginx/sys.conf:11
  10. 【Oracle】【日期、时间】 date与数字时间戳互转