数据库(oracle) 索引
定义:
数据库索引好比是一本书前面的目录,能加快数据库的查询速度.
优点:
定义:
优化:
- 在作为主键的列上,强制该列的唯一性和组织表中数据的排列结构;
- 在经常用在连接的列上,这些列主要是一些外键,可以加快连接的速度;在经常需要根据范围进行搜索的列上创建索引,因为索引已经排序,其指定的范围是连续的;
- 在经常需要排序的列上创建索引,因为索引已经排序,这样查询可以利用索引的排序,加快排序查询时间;
- 在经常使用在WHERE子句中的列上面创建索引,加快条件的判断速度。
- 第一,对于那些在查询中很少使用或者参考的列不应该创建索引。这是因为,既然这些列很少使用到,因此有索引或者无索引,并不能提高查询速度。相反,由于增加了索引,反而降低了系统的维护速度和增大了空间需求。
- 第二,对于那些只有很少数据值的列也不应该增加索引。这是因为,由于这些列的取值很少,例如人事表的性别列,在查询的结果中,结果集的数据行占了表中数据行的很大比例,即需要在表中搜索的数据行的比例很大。增加索引,并不能明显加快检索速度。
- 第三,对于那些定义为text, image和bit数据类型的列不应该增加索引。这是因为,这些列的数据量要么相当大,要么取值很少,不利于使用索引。
- 第四,当修改性能远远大于检索性能时,不应该创建索引。这是因为,修改性能和检索性能是互相矛盾的。当增加索引时,会提高检索性能,但是会降低修改性能。当减少索引时,会提高修改性能,降低检索性能。因此,当修改操作远远多于检索操作时,不应该创建索引。
创建索引:
1.查看所有用户
select * from all_users; -------查看所有的用户
select * from user_users; --------查看当前用户
2.查看用户或角色系统权限:
select * from user_sys_privs; --------查看当前用户的权限
3.查看角色所包含的权限
select * from role_sys_privs; -------
4.查看用户对象权限
select * from all_tab_privs; --------查看所用的用户的可操作表权限
select * from user_tab_privs; --------查看当前用户的表可操作权限
5.查看用户或角色所拥有的角色
select * from user_role_privs; ------查看当前用户的角色
select * from user_constraints where TABLE_NAME='?'; -----查看某一个表的约束
6.查看用户下的索引
1. select * from user_indexes- -----查看当前用户下的所有索引
2. select * from user_indexes where table_name='A'; -----查看当前用户下表A的索引
(drop index index_name去掉索引)
3. select index_name,index_type,status,blevel from user_indexes where table_name = '?';
-----查看某一个表的所有索引
4. select table_name, index_name, column_name, column_position from user_ind_columns where table_name='?'; ----查看索引的构成
7. 建索引
create unique clustered index 索引名on 表名(字段1) --单索引
Create index 索引名 on 表名(字段1,字段2) -------复合索引
数据库(oracle) 索引相关推荐
- 定时创建oracle索引,oracle数据库关于索引建立及使用的详细介绍
索引的说明 索引是与表相关的一个可选结构,在逻辑上和物理上都独立于表的数据,索引能优化查询,不能优化DML操作,Oracle自动维护索引,频繁的DML操作反而会引起大量的索引维护. 如果SQL语句仅访 ...
- oracle 索引_分享三个Oracle数据库索引监控脚本,值得收藏
概述 我们在维护业务系统时,可能会建立很多索引,那么这些索引的使用到底怎么样,是否有些索引一直都没有用到过,那么oracle 是如何监控索引的使用状况,是否可以清除它们? 监控索引 一般有两种方式: ...
- Oracle数据库(索引、视图、伪列与伪表)
引用推荐博客.数据库网址 http://www.educity.cn/shujuku/1598602.html(希赛数据库学院) http://blog.csdn.net/kingzone_2008/ ...
- oracle or索引失效_oracle数据库中索引会失效的几种情况
创建Oracle 索引的目的是为了避免全表扫描数据,提高查询效率,但是如果sql语句写的不好致使索引失效,反而会影响数据查询效率.以下几种情况就会导致索引失效: 没有 WHERE 子句 众所周知,添加 ...
- oracle数据库中索引会失效的几种情况
创建Oracle 索引的目的是为了避免全表扫描数据,提高查询效率,但是如果sql语句写的不好致使索引失效,反而会影响数据查询效率.以下几种情况就会导致索引失效: 1. 没有 WHERE 子句 众所周知 ...
- [转载]oracle索引的简单总结
原文地址:oracle索引的简单总结作者:kindle 一.索引的概念: 数据库的索引类似于书籍的索引.在书籍中,索引允许用户不必翻阅完整个书就能迅速地找到所需要的信息.在数据库中,索引也允许数据库程 ...
- oracle索引总结
1.说明 1)索引是数据库对象之一,用于加快数据的检索,类似于书籍的索引.在数据库中索引可以减少数据库程序查询结果时需要读取的数据量,类似于在书籍中我们利用索引可以不用翻阅整本书即可找到想要的信息. ...
- oracle不开归档对效率会快吗,关于性能:存档庞大的数据库(oracle),而不会影响向其插入记录的进程...
我们有一个审计数据库(oracle),它保存部署在应用程序服务器上的服务(大约100个)执行的所有活动的监视器信息.您可能认为审计数据库非常庞大,因为服务处理的请求数量很大.此数据库上唯一的写入事务是 ...
- 【Oracle】Oracle索引
在关系数据库中,索引是一种与表有关的数据库结构,它可以使对应于表的SQL语句执行得更快.索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容. 对于数据库来说,索引是一个必选项,但对于现 ...
最新文章
- 曲面拟合之最小二乘法(矩形域)
- PHP显示今天、今月、上月、今年的起点/终点时间戳
- 【django】视图和URL
- linux pidof用法,科技常识:Linux pidof命令使用总结
- AI 换脸冲上 GitHub TOP1,如何一键生成亲妈都不认识的自己?
- “技术需求”与“技术成果”项目之间关联度计算模型 复赛top1解决方案
- 顺利通过EMC实验(13)
- map/reduce之间的shuffle,partition,combiner过程的详解
- virtualbox启动后一直黑窗_UBUNTU18.04 安装virtualbox-6.0,出现rc=-1908问题解决方法
- Cesium:通过字符串创建颜色
- 网络流24题 洛谷 2763 试题库问题
- 办公神器,专治低效——特色功能软件工具
- 怎么下载安装Firebug和使用Firebug
- 如何设计一个秒杀系统?
- java下载文件下载不动_JAVA实现文件下载,浏览器端得到数据没反应
- 嵌入式编程经典书籍推荐
- home为什么是地点副词_home为什么可以做副词
- JAVA-DDD项目结构
- 【GreenDao学习笔记】SQLite数据库保存float/double小数类型精度丢失
- Phi-divergence
热门文章
- 《网页设计与前端开发 Dreamweaver+Flash+Photoshop+HTML+CSS+JavaScript 从入门到精通》—— 第1章 网页设计基础知识...
- weblogic启动脚本
- html5 worker的使用场景
- TCP滑动窗口机制深度剖析
- Django基础-Web框架-URL路由
- RocketMQ源码解析-Broker的消息存储
- python 碎片图像拼接_python实现图像拼接
- PHP SESSION生存时间设置
- java运输_JAVA-基础-方法
- 打开c语言运行不了_C语言——菜鸟和大神的分水岭:内存、线程、进程