记录学习oracle的操作与原理6

本文详细介绍了Oracle数据库中的索引类型,包括B-树索引、位图索引等,以及创建索引的准则和条件。同时,讨论了视图的作用和限制,以及如何通过视图为用户提供数据的不同视角。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

oracle索引

索引能减少必要的磁盘i/o时间,缩短查询数据的时间,但创建索引之后一般会增加数据更新操作的执行时间

oracle中的索引模式

(1)b-树索引,默认的索引

(2)b-树簇索引,为簇定义的索引

(3)全局和本地索引,应用于分区表的索引

(4)位图索引,适用于具有少量值的列的索引

管理索引的准则

(1)限制每个表的索引的数量

(2)为每个索引制定表空间

(3)估计索引大小 并设置存储参数

在如下条件下需要创建索引

(1)一列或多列被经常一起用于where条件和连接条件中

(2)表很大,有很多记录

(3)列有较大的取值范围

创建索引

(1)创建唯一索引

唯一索引保证在索引列上不会有两行相同的值

(2)创建位图索引

位图索引并不重复存放索引列的值,因此位图索引需要的存储空间比b-树索引小的多,所以oracle在使用位图索引时将整个位图索引段装入内存中,这个过程相当于将一个在磁盘上的搜索变成了一个在内存中的查询过程,从而提高系统效率

位图索引适用于仅有几个固定值的列,如性别

(3)创建基于函数的索引

基于函数的索引主要使用在经常执行以某种函数形式为条件来查询数据的应用

(4)创建簇索引

oracle视图

基本视图

视图本身不存放任何数据,可以隐藏络及数据,为系统安全提供支持

视图的好处

(1)限制用户对数据的访问

(2)使得复杂查询对编程人员变得容易使用

(3)为相同的数据提供不同的视角

其中,视图的使用是有限制的,如果视图建立时包含如下结构之一,则视图不能做insert/update/delete操作

(1)连接运算

(2)集合运算

(3)分组函数

(4)distinct

(5)group by/connect by/start with

内嵌视图

内嵌视图是一个写在sql语句内的带有一个别名的子查询,所谓的内嵌视图就是一个子查询数据结果的存放的视图

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值