学习oracle的索引

1,索引的概念和分类

1,create index可以建立索引在如下几种情况

1,表,分区表,索引组织表,或集表的一个或多个列

2,表或集表的一或多个标量类型的对象属性上

1,经测在record类型不能用表类型

2,plsql表类型同上

3,nested 表的nested表列上

1,问题,其语法及注意点

4,官方文档

2,索引的类型

1,普通索引,默认即oracle创建的B树索引

2,位图索引,以位图方式存储与键值关连的rowid

3,分区索引,分区表中的分区表的索引列的每个值存储一条记录或叫条目

4,基于函数的索引,基于函数表达式.

5,域索引,与某个特定应用有关的索引类型的一个实例

6,?Oracle Database Concepts for a discussion of indexes 可以查看关于索引的讨论

问题

3,构建索引的前提条件

1,索引在自己的用户下

2,对索引的表具有构建索引的对象权限

3,必须有create any index系统权限

4,为了创建域索引,还要具备在indextype上实行execute对象权限

且先要创建indextype

5,为了创建基于函数的索引,这些函数必须声明为deterministic

如果这些函数属于另一个用户,必须对其有execute的对象权限

1,测试创建基于函数的索引

4,唯一索引unique

1,限制情况:

1,不能对位图索引创建unique index

2,不能对域索引创建unique index

5,bitmap位图索引

1,不是存储每行的索引,而存储每个不同键建立位图索引

2,构建每个不同键值与rowid的关系

3,位图中每个比特对应一个可能的rowid,如果配置了比特, 即对应rowid的记录包含一个键值

4,这种表示适用于低强度的并发的应用,比如数据仓库

5,在此索引上,会存储索引列全为null在索引中,经测试null仅存储一次

6,限制情况

1,不能在全局分区索引上创建位图索引

2,不能在一个索引组织表上创建位图索引,除非索引组织表建立一个与它映射的表

3,位图索引不能同时指定unique和bitmap

4, 域索引也不能指定bitmap

5,位图索引最多有30列

6,问题:?Oracle Database Concepts and

Oracle Database Performance Tuning Guide for more information about using bitmap indexes

6,临时表上可以建立索引,但作用时间范围同于临时表,基于会话和基于事务;

不能在临时表上创建域索引

不能指定物理属性和并行度及日志和表空间

问题:要测试下临时表上创建索引的情况

CREATE TABLE and Oracle Database Concepts for more information on temporary tables

7,索引列的限制情况

1,不能对用户自定义类型,long,long raw,lob,ref建立索引

除非oracle支持在ref类型的列上建索引或者用scope子句定义的属性

2,只有B树即普通索引可以在加密列上建索引,且只能用于等值查询

8,基于函数的索引的一些注意点

1,如果索引列为空,不会用基于函数的索引

create table t_unique(a int);--对其插入多条null记录

create index t_unique_idx on t_unique(a,o);

--强制全表扫描成本是3

select /*+full(t_unique) */ * from t_unique where a is   null

select * from t_unique where a is null

小结:有时强制直全表性能更差,全表的一致读为8,而索引范围扫描的一致性读为2

2,where条件列顺序与基于函数的列顺序不同,也会使用基于函数的索引

3,如果基于函数的索引,其函数无效可删除了。其索引会标记为disabled;

如果基于disabled的查询就会失败(前提是cbo选择使用索引)

如果基于disabled的dml也会失败,除非你把索引标记为unuable,把参数skip_unusable_indexes=true

2,索引测试,主要是不同索引的适用情况

3,索引与dml的关系

3,学习存储过程中多个begin end代码块与异常精确定位

4,测试如果在没有备份表的情况下,truncate table,可否用logminer恢复数据

C:\Users\123>

sqlldr userid=scott/system control=c:\insert_batch.ctl log=c:\sqlloader_imp.log

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9240380/viewspace-755436/,如需转载,请注明出处,否则将追究法律责任。

oracle索引index_type,oracle index索引相关笔记相关推荐

  1. Oracle总结【视图、索引、事务、用户权限、批量操作】

    前言 在Oracle总结的第一篇中,我们已经总结了一些常用的SQL相关的知识点了-那么本篇主要总结关于Oralce视图.序列.事务的一些内容- 在数据库中,我们可以把各种的SQL语句分为四大类- (1 ...

  2. oracle 查询索引个数,Oracle数据库索引的创建和查询

    索引命名规范:普通索引最好i_开头,唯一索引最好u_开头,primary key索引最好pk_开头 1.创建索引:create index 索引名 on 表名(字段名); 2.查询索引 oracle中 ...

  3. mysql 索引index_MySQL查询优化之 index 索引的分类和使用

    索引的分类 主键索引 (PRIMARY KEY) 唯一的标识符, 主键不可重复, 只能有一列作为主键 唯一索引 (Unique KEY) 避免重复的列出现, 唯一索引可以重复, 多个列都可以标识为唯一 ...

  4. mysql 索引 简书_MySQL 索引

    索引用于快速查找具有特定列值的行.如果没有索引,MySQL必须从第一行开始,然后读取整个表以查找相关行.表越大,成本越高.如果表中有相关​​列的索引,MySQL可以快速确定要在数据文件中间寻找的位置, ...

  5. SQL中的索引知识点总结(聚集索引、非聚集索引)

    SQL里的索引(index)知识: 索引分为聚集索引和非聚集索引,数据库中的索引类似于一本书的目录,在一本书中通过目录可以快速找到你想要的信息(例如字典里按照拼音或部首查找).索引的目的是提高系统性能 ...

  6. Mysql 索引(三)—— 不同索引的创建方式(主键索引、普通索引、唯一键索引)

    了解了主键索引的底层原理,主键索引其实就是根据主键字段建立相关的数据结构(B+树),此后在使用主键字段作为条件查询时,会直接根据主键查找B+树的叶子结点.除了主键索引外,普通索引和唯一键索引也是如此, ...

  7. mysql强制禁止使用索引_MYSQL强制使用索引和禁止使用索引

    MySQL强制索引和禁止某个索引 1.mysql强制使用索引:force index(索引名或者主键PRI) 例如: select * from table force index(PRI) limi ...

  8. mysql优化之索引_mysql优化之索引

    概念: 在数据库中除了数据之外,还维护着满足特定查找算法的数据结构.这些数据结构以某种方式引用(指向)数据,这样就可以在这些数据结构上实现高级查找算法,这种数据结构就是索引.通常使用B树以及变种B+树 ...

  9. mysql 屏蔽索引_mysql强制索引和禁止某个索引

    mysql强制索引和禁止某个索引 1.mysql强制使用索引:force index(索引名或者主键PRI) 例如: select * from table force index(PRI) limi ...

  10. mysql强制指定索引_mysql强制索引和禁止某个索引

    1.mysql强制使用索引:force index(索引名或者主键PRI) 例如: select * from table force index(PRI) limit 2;(强制使用主键) sele ...

最新文章

  1. 使用js的indexOf,lastIndexOf,slice三函数轻易得到url的服务器,路径和页名
  2. 小米岭南通服务器维护,小米岭南通交通联合卡内测开启
  3. Datawhale组队-Pandas(下)时序数据(打卡)
  4. ASP.NET 2.0中CSS失效的问题总结
  5. cas ajax请求重定向,cas 单点登录 .net client mvc 重定向问题
  6. Java中break、continue及标签等跳转语句的使用[下]
  7. 【BZOJ3174】[TJOI2013]拯救小矮人(贪心,动态规划)
  8. 访问iis元数据库失败怎么解决?
  9. Redis入门到精通-Redis集群搭建
  10. 如何设置sap生产订单自动关闭
  11. 算法竞赛入门经典训练指南 pdf
  12. 计算机屏保代码,AD 脚本kixtart运用之五(用户电脑屏保设置)(示例代码)
  13. Python并发编程相关及在爬虫实战中的使用
  14. [BZOJ4134][JZOJ4401]ljw和lzr的hack比赛
  15. 【AI视野·今日NLP 自然语言处理论文速览 第三期】Tue, 8 Jun 2021
  16. 音乐推荐-3张新碟《雪狼》+《馨馨醉》+《光》
  17. 开机弹框显示IGCCTray.exe异常的修复方式
  18. c语言txt文件写入数学,文本文件输入文件.txt中存有一个学生的学号,性别,年龄,数学,语文,英语三门课的成绩....
  19. PostGIS 路线规划
  20. 新GSP质量文件——21个岗位职责

热门文章

  1. 图像处理——SIFT算法
  2. (简单有效)vivo手机怎么不root激活Xposed框架
  3. 生鲜电商进入2.0时代,美团还有“后招”吗?
  4. Java读取数据库中的数据
  5. 微星X470主板装机
  6. ​​​​​​​sokit v1.3抓手机应用socket数据包: Socket是传输控制层协议,WebSocket是应用层协议。
  7. 书写程序时应遵循的规则_您可能在计算自由职业者率时全错了,因此请遵循此策略...
  8. AltRun调用cmd并刷新DNS
  9. QT_T04-COOD
  10. JVM之Tomcat的优化