zoukankan      html  css  js  c++  java
  • Oracle 中伪数列ROWID

      Oracle 的ROWID 用来唯一标识表中的一条记录,是这条数据在数据库中存放的物理地址。

      一般来说,每一行数据对应的rowid是固定而且唯一的,在这一行数据存入数据库的时候就确定了。

      可以利用rowid来查询记录,而且通过rowid查询记录是查询速度最快的查询方法。ROWID只有在表发生移动(比如表空间变化,数据导入/导出以后),才会发生变化。

      ROWID的结构:

      有18位,每位使用base-64代码,包括a-z,A-Z,0-9,+,- 共64个字符表示。 A表示0,B表示1,。。。Z表示25,a表示26,。。。z表示51,0表示52,。。9表示61,+表示62,-表示63。ROWID具体可以划分为4个部分。
      
      1-6位:代表OBJECT ——数据对象编码 。将其转化成数字后匹配DBA_OBJECTS中DATA_OBJECT_ID字段值,可以确定表信息。
      7-9位:文件相对值 ——相关文件编码。 相对表空间的数据文件号。
      10-15:文件中的BLOCK ——块编码。 表示这条记录在数据文件中的第几个BLOCK中。
      16-18:BLOCK中的SLOT值 ——行编码。表示这条记录是BLOCK中的第几条记录。
     
      注:在FORM开发过程,如果数据块重新布局,ROWID项的属性值就会自动变为4,此时需手工修改值为18。
  • 相关阅读:
    基金进阶
    gpgj-19.高级课总结
    (10)大类资产配置一升级版股债平衡
    13.高速公路行业
    16.投资法总结以及类集团公司介绍
    08.零售类公司分析•上
    在Ubuntu 12.04系统中安装配置OpenCV 2.4.3的方法
    一台电脑上含有多个ubuntu系统的卸载方法
    Linux命令每日一个
    Java UDP实现聊天功能代码
  • 原文地址:https://www.cnblogs.com/Cqiang/p/2746531.html
Copyright © 2011-2022 走看看