OCP学习:DDL和模式对象003

2024-05-11 07:08
文章标签 学习 模式 对象 ddl 003 ocp

本文主要是介绍OCP学习:DDL和模式对象003,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

索引

索引有两个功能:
1 强制实施主键约束和唯一约束。
2 提高性能

索引是约束机制的一部分。索引对性能而言至关重要,可以大大提高查询效率。
索引可以实现排序,无须使用Order BY等字段。
索引在联接表的时候可以提高性能。

索引类型:

1.B*树索引

B表示平衡(Balance),是一个树形结构。树的根节点指向第二级别的多个节点,第二级别的节点又指向第三级别的多个节点,以此类推。树的必须深度主要取决于表的行数,以及索引键值的长度。
B*树结构十分有效,如果深度大小于三级或四级,则说明索引键十分长,或表包含数十亿行。如果情况并非如此,则需要重建索引。

2.位图索引
位图索引将与每个键值关联的rowid存储为位图。位图的合并速度极快,可使用AND、OR和NOT操作符的任意组合,基于很多列上的很多条件,实现复杂的布尔操作。与B*树索引相比,位图索引的一个特别好处在于它们包含NULL。就位图索引而言,NULL只不过是另一个具有自己的位图的不同值而已。
一般,在具备以下条件时使用位图索引:

  • 列的基数(不同值的个数)小。
  • 表中的行数多。
  • 列用于布尔代数运算。

3.索引类型选项
在创建索引时,可以应用6个常用选项:

  • 唯一或非唯一(Unique or non-unique)
  • 反向键(Reverse key)
  • 压缩(Compressed)
  • 符合(Composite)
  • 基于函数(Function based)
  • 升序或降序(Ascending or descending)
    所有这6个选项都可以应用于B* 索引,只有后三个选项可用于位图索引。

创建和使用索引:

基本语法:

    CREATE [UNIQUE | BITMAP] INDEX [ schema.]indexname ON [schema.]tablename (column [, column...] );

Oracle 服务器应该可以作出有关使用索引的最佳决策,但是,如果Oracle服务器的做法有误,编程人员可以在代码中嵌入指令(成为优化器提示),以便强制 使用(或不使用)某些索引。

修改和删除索引:

DROP INDEX [ schema.]indexname;
CREATE [UNIQUE | BITMAP] INDEX [ schema.]indexname ON [schema.]tablename (column [, column...] );

ALTER INDEX 命令属于数据库管理范畴,通常用于调整索引的物理属性,不用于调整开发人员关注的逻辑属性,不能用于修改索引。若需要修改索引属性,则必须删除和重新创建索引。

这篇关于OCP学习:DDL和模式对象003的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/978841

相关文章

golang 对象池sync.Pool的实现

《golang对象池sync.Pool的实现》:本文主要介绍golang对象池sync.Pool的实现,用于缓存和复用临时对象,以减少内存分配和垃圾回收的压力,下面就来介绍一下,感兴趣的可以了解... 目录sync.Pool的用法原理sync.Pool 的使用示例sync.Pool 的使用场景注意sync.

SpringBoot项目中Redis存储Session对象序列化处理

《SpringBoot项目中Redis存储Session对象序列化处理》在SpringBoot项目中使用Redis存储Session时,对象的序列化和反序列化是关键步骤,下面我们就来讲讲如何在Spri... 目录一、为什么需要序列化处理二、Spring Boot 集成 Redis 存储 Session2.1

Java实例化对象的​7种方式详解

《Java实例化对象的​7种方式详解》在Java中,实例化对象的方式有多种,具体取决于场景需求和设计模式,本文整理了7种常用的方法,文中的示例代码讲解详细,有需要的可以了解下... 目录1. ​new 关键字(直接构造)​2. ​反射(Reflection)​​3. ​克隆(Clone)​​4. ​反序列化

SQL Server身份验证模式步骤和示例代码

《SQLServer身份验证模式步骤和示例代码》SQLServer是一个广泛使用的关系数据库管理系统,通常使用两种身份验证模式:Windows身份验证和SQLServer身份验证,本文将详细介绍身份... 目录身份验证方式的概念更改身份验证方式的步骤方法一:使用SQL Server Management S

重新对Java的类加载器的学习方式

《重新对Java的类加载器的学习方式》:本文主要介绍重新对Java的类加载器的学习方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍1.1、简介1.2、符号引用和直接引用1、符号引用2、直接引用3、符号转直接的过程2、加载流程3、类加载的分类3.1、显示

C++类和对象之初始化列表的使用方式

《C++类和对象之初始化列表的使用方式》:本文主要介绍C++类和对象之初始化列表的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C++初始化列表详解:性能优化与正确实践什么是初始化列表?初始化列表的三大核心作用1. 性能优化:避免不必要的赋值操作2. 强

Redis高可用-主从复制、哨兵模式与集群模式详解

《Redis高可用-主从复制、哨兵模式与集群模式详解》:本文主要介绍Redis高可用-主从复制、哨兵模式与集群模式的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝... 目录Redis高可用-主从复制、哨兵模式与集群模式概要一、主从复制(Master-Slave Repli

一文带你搞懂Redis Stream的6种消息处理模式

《一文带你搞懂RedisStream的6种消息处理模式》Redis5.0版本引入的Stream数据类型,为Redis生态带来了强大而灵活的消息队列功能,本文将为大家详细介绍RedisStream的6... 目录1. 简单消费模式(Simple Consumption)基本概念核心命令实现示例使用场景优缺点2

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

Java对象转换的实现方式汇总

《Java对象转换的实现方式汇总》:本文主要介绍Java对象转换的多种实现方式,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Java对象转换的多种实现方式1. 手动映射(Manual Mapping)2. Builder模式3. 工具类辅助映