oracle 添加索引
oracle添加索引方法是什么呢?不知道的小伙伴来看看小编今天的分享吧!
1、oracle中索引说明
1)索引是数据库对象之一,用于加快数据的检索,类似于书籍的索引。在数据库中索引可以减少数据库程序查询结果时需要读取的数据量,类似于在书籍中我们利用索引可以不用翻阅整本书即可找到想要的信息。
2)索引是建立在表上的可选对象;索引的关键在于通过一组排序后的索引键来取代默认的全表扫描检索方式,从而提高检索效率
3)索引在逻辑上和物理上都与相关的表和数据无关,当创建或者删除一个索引时,不会影响基本的表;
4)索引一旦建立,在表上进行DML操作时(例如在执行插入、修改或者删除相关操作时),oracle会自动管理索引,索引删除,不会对表产生影响
5)索引对用户是透明的,无论表上是否有索引,sql语句的用法不变
6)oracle创建主键时会自动在该列上创建索引
2、索引原理
若没有索引,搜索某个记录时(例如查找na='wish')需要搜索所有的记录,因为不能保证只有一个wish,必须全部搜索一遍
若在na上建立索引,oracle会对全表进行一次搜索,将每条记录的na值哪找升序排列,然后构建索引条目(na和rowid),存储到索引段中,查询na为wish时即可直接查找对应地方
创建了索引并不一定就会使用,oracle自动统计表的信息后,决定是否使用索引,表中数据很少时使用全表扫描速度已经很快,没有必要使用索引。
3、oracle中添加索引方法
CREATE [UNIQUE] | [BITMAP] INDEX index_na --unique表示唯一索引
ON table_na([column1 [ASC|DESC],column2 --bitmap,创建位图索引
[ASC|DESC],…] | [express]) [TABLESPACE tablespace_na]
[PCTFREE n1]
指定索引在数据块中空闲空间
[STORAGE (INITIAL n2)]
[NOLOGGING]
表示创建和重建索引时允许对表做DML操作,默认情况下不应该使用
[NOLINE]
[NOSORT];
表示创建索引时不进行排序,默认不适用,如果数据已经是按照该索引顺序排列的可以使用
以上就是小编今天的分享了,希望可以帮助到大家。
生活小妙招
- 杭州市小客车总量调控管理暂行规定
- 个人所得税退税的条件和标准 下载个人所得税
- 江苏省南通市通州区天气 江苏省南通通州区天气
- 夫妻有按揭的房子离婚怎么办 夫妻有按揭的房子
- 山东省青岛市市北区天气 山东省青岛市市北区天
- 什么财产离婚后不用分割 什么财产离婚后不用分
- 工伤认定必须满足三个条件 工伤认定申请必须满
- 家暴出轨不受离婚冷静期限制 家暴不适用离婚冷
- 武夷山一周天气预报 武夷山一周天气预报15天准
- 怎么与孩子沟通最有效方法 怎么与孩子沟通的技
- 女方提出离婚财产怎么分割 女方提出离婚财产怎
- 华东五市天气预报 华东五市的天气
- 深圳车辆违章记录查询 深圳车辆违章记录查询
- 老公铁了心要离婚还能挽回吗 老公铁了心离婚的
- 怎么计算工伤十级的赔偿金 工伤十级赔偿计算公
- 武汉天气预报15天气报 武汉天气预报15天