一、 ROWID的概念

存储

了row在数据文件中的具体位置:64位编码的数据,A-Z, a-z, 0-9, +, 和 /,

row在数据块中的存储

方式

SELECT ROWID, last_name from hr.employees WHERE department_id = 20;

比如:OOOOOOFFFBBBBBBRRR

OOOOOO:data object number, 对应dba_objects.data_object_id

FFF:file#, 对应v$datafile.file#

BBBBBB:block#

RRR:row#

Dbms_rowid包

SELECT dbms_rowid.rowid_block_number('AAAGFqAABAAAIWEAAA') from dual;

具体到特定的物理文件

二、 索引的概念

1、 类似书的目录结构

2、 Oracle

的“索引”对象,与表关联的可选对象,提高SQL查询语句的速度

3、 索引直接指向包含所查询值的行的位置,减少磁盘I/O

4、 与所索引的表是相互独立的物理结构

5、 Oracle

自动使用并维护索引,插入、删除、更新表后,自动更新索引

--工作感觉中 所谓oracle自动维护在插入后,其实好像并非如此!不是oracle 独立的进程在 插入后开始维护

而是在插入这个SESSION中维护,在insert into   commit; 语句后维护。

6、 语法:CREATE INDEX index ON table (column[, column]...);

7、 B-tree结构(非bitmap):

[一]了解索引的工作原理:

表:emp

目标:查询Frank的工资salary

建立索引:create index emp_name_idx on emp(name);

以下图说明节点和叶节点的关系,节点负责二叉树的路径,如同书目录左边的目录列表 ;

叶节点就是目录列表右边的页码

索引也会很大化 因为它也要存储些字段和字段的值

三、 唯一索引

1、 何时创建:当某列任意两行的值都不相同

2、 当建立Primary Key(主键)或者Unique constraint(唯一约束)时,唯一索引将被自动建立

3、 语法:CREATE UNIQUE INDEX index ON table (column);

4、 演示

四、 组合索引

1、 何时创建:当两个或多个列经常一起出现在where条件中时,则在这些列上同时创建组合索引

2、 组合索引中列的顺序是任意的,也无需相邻。但是建议将最频繁访问的列放在列表的最前面

3、 演示(组合列,单独列)

五、 位图索引

1、 何时创建:

列中有非常多的重复的值时候。例如某列保存了 “性别”信息。

Where 条件中包含了很多OR操作符。

较少的update操作,因为要相应的

oracle全局索引 前缀索引_Oracle数据库中的索引详解相关推荐

  1. 数据库索引统计信息不一致_列存储索引增强功能–克隆数据库中的索引统计信息更新

    数据库索引统计信息不一致 SQL Server was launched in 1993 on WinNT and it completed its 25-year anniversary recen ...

  2. Oracle数据库之rownum,ORACLE数据库中Rownum用法详解

    ORACLE 中ROWNUM用法总结! 对于 Oracle 的 rownum 问题,很多资料都说不支持>,>=,=,between...and,只能用以上符号(,& gt;=,=, ...

  3. oracle tns 代理配置_oracle数据库tns配置方法详解

    TNS简要介绍与应用 Oracle中TNS的完整定义:transparence Network Substrate透明网络底层,监听服务是它重要的一部分,不是全部,不要把TNS当作只是监听器. TNS ...

  4. mysql支持非关系_说下oracle、mysql、非关系型数据库中的索引结构?

    谢邀~~树懒君悉心整理了一篇索引结构方面的内容,跟各位知友分享分享~ Oracle 索引的数据结构:B-TreeOracle 数据库使用 B-trees 存储索引,来加速数据访问.若没有索引,你必须顺 ...

  5. android 数据库表格数据库数据库中,Android SQLite数据库中的表详解

    Android SQLite数据库 前言 以前写PHP的时候,内置了print_r()和var_dump()两个函数用于打印输出任意类型的数据内部结构,现在做Android的开发,发现并没有这种类似的 ...

  6. oracle和mysql空字符串_Oracle数据库中对null值的排序及mull与空字符串的区别

    order by排序之null值处理方法在对业务数据排序时候,发现有些字段的记录是null值,这时排序便出现了有违我们使用习惯的数据大小顺序问题.在Oracle中规定,在Order by排序时缺省认为 ...

  7. oracle 主键自增函数_Oracle数据库中创建自增主键的实例教程

    在设计数据库表的时候发现Oracle没有自增主键的设置,Google了解到Oracle本身并不支持自增主键,需要通过序列(Sequence)和触发器(Trigger)实现. 创建表Student Cr ...

  8. mysql数据库tns配置_oracle数据库tns配置方法详解

    TNS是Oracle Net的一部分,专门用来管理和配置Oracle数据库和客户端连接的一个工具,在大多数情况下客户端和数据库要通讯,必须配置TNS,下面看一如何配置它吧 TNS简要介绍与应用 Ora ...

  9. oracle数据库中索值,Oracle数据库中的索引详解

    Oracle数据库中的索引详解以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一 ROWID的概念 存储了row在数据文 ...

最新文章

  1. 使用FileUpload控件上传前预览图片
  2. 项目中遇到的Integer问题--转
  3. Ch2r_ood_understanding 本文档为论文限定领域口语对话系统中超出领域话语的对话行为识别的部分实验代码。代码基于Python,需要用到的外部库有: Keras(搭建神经网络) S
  4. GraphPad Prism多数据处理实用技巧
  5. (网址收藏)Golang模块之HTTP
  6. 分区格式化并给用户设定配额
  7. Leetcode--24. 两两交换链表中的结点
  8. tar: /usr/app: Not found in archive
  9. PVLAN(Private VLAN)在局域网中的应用
  10. cad lisp程序大集_AUTO CAD 命令大集
  11. 51单片机——定时器
  12. Wise Force Deleter(电脑文件强制删除软件)官方中文版V1.5.3.54 | 支持强制删除超大文件夹
  13. python求奇偶数和_用Python返回偶数和奇数
  14. python爬虫采集财经数据
  15. 东财《金融法X》综合作业
  16. 英语词汇篇 - 构词法
  17. 【LeetCode每日一题】——1042.不邻接植花
  18. B站脑机接口主流算法解析课程视频汇总
  19. 红图新媒体让你知道提升新媒体广告ROI需要关注的10个指标,
  20. 微信小程序学习 (一)

热门文章

  1. 云起实验室:基于Ubuntu搭建个人网盘
  2. 研究生学历——一个尴尬的学位
  3. Node.js async/awit
  4. Lyapunov意义下的稳定性定义
  5. 图片不能放大缩小的问题
  6. 数据结构与算法(Java版) | 数据结构与算法的重要性
  7. 阿里如何保障数据质量的?
  8. python实现pca降维_python实现PCA(主成分分析)降维
  9. python中pca算法_使用python的numpy库实现PCA算法
  10. 世界观测最佳点南极:极点条件构成地舆乐土