Oracle索引&约束】的更多相关文章

管理索引-原理介绍 索引是用于加速数据存取的数据对象.合理的使用索引可以大大降低i/o次数,从而提高数据访问性能. 单列索引 适当的索引对于大型数据库的性能有不错的提升, 但在创建索引时要小心.选择字段取决于使用的是什么SQL查询. 单列索引是基于单个列所建立的索引 create index 索引名 on 表名(列名); create index nameIndex on custor(name); 复合索引 复合索引是基于两列或是多列的索引.在同一张表上可以有多个索引,但是要求列的组合必须不同…
oracle的约束隐式创建索引和先索引后约束的区别 两种情况:1.对于创建约束时隐式创建的索引,在做删除操作的时候: 9i~11g都会连带删除该索引 2.对于先创建索引,再创建约束(使用到此索引)这种情况:9i版本:需要区分索引是否唯一: 如果索引是唯一的,则删除约束的时候,会连带删除索引:如果非唯一的,则不会删除索引.10g以后版本,包括11g:无论索引是否唯一,都只是删除约束,索引不会删除. 参考metalink文档:309821.1 实验验证下$ ss SQL*Plus: Release…
版权声明:本文发布于http://www.cnblogs.com/yumiko/,版权由Yumiko_sunny所有,欢迎转载.转载时,请在文章明显位置注明原文链接.若在未经作者同意的情况下,将本文内容用于商业用途,将保留追究其法律责任的权利.如果有问题,请以邮箱方式联系作者(793113046@qq.com). 理解oracle索引扫描类型的特点以及具体触发的条件,对于通过合理地使用索引,进行sql优化至关重要(例如组合索引的引导列的选择问题). 在总结索引扫描类型前,需要再次强调关于索引特点…
索引是数据库中一种可选的数据结构,她通常与表或簇相关.用户可以在表的一列或数列上建立索引,以提高在此表上执行 SQL 语句的性能.就像本文档的索引可以帮助读者快速定位所需信息一样,Oracle 的索引提供了更为迅速地访问表数据的方式.正确地使用索引能够显著的减少磁盘 I/O. 用户可以为一个表创建多个索引,只要不同索引使用的列或列的组合(combination of columns)不同即可.例如,下列语句中指定的列组合是有效的: CREATE INDEX employees_idx1 ON e…
根据索引的类型与where限制条件的不同,有4种类型的Oracle索引扫描: 3,4可归一种 (1) 索引唯一扫描(index uniquescan) (2) 索引范围扫描(index range scan) (3) 索引全扫描(index full scan) (4) 索引快速扫描(index fast full scan) (5) 索引跳跃扫描(INDEXSKIP SCAN) 一. 索引唯一扫描(index unique scan) 通过唯一索引查找一个数值经常返回单个ROWID,存在UNI…
在创建Oracle索引时,有一些问题使我们需要注意的,下面就为您介绍创建oracle索引的一些注意事项,希望对您学习创建Oracle索引方面能有所帮助. 1.一般来说,不需要为比较小的表创建索引: 2.即使是大表,如果经常需要查询的数据不超过10%到15%的话,那就没有必要为其建立索引的必要.因为此时建立索引的开销可能要比性能的改善大的多.这个比例只是一个经验的数据.如果数据库管理员需要得出一个比较精确的结论,那么就需要进行测试分析. 3.如对于一些重复内容比较少的列,特别是对于那些定义了唯一约…
Oracle索引类型 B树索引 特定类型索引 确定索引列 主键和唯一键值列的索引 外键索引 其他合适的索引列 B树索引 B树索引算法 B树是指B-tree(Balanced Tree),B树的存在是为了存储设备而设计的一种多分叉的树.B树中 每个节点至多含有m个子节点 每个非叶子节点除了根节点之外至少含有⌈m/2⌉个子节点 根节点至少含有2个子节点否则它是叶子节点 有k个子节点的非叶子节点包含k-1个键值 所有叶子节点出现在同一层 其中,m称为该B树的阶,一个3阶B树的节点的排列如同 [指针]键…
之前在讨论CBO和RBO的时候提到了索引扫描的几种类型. Oracle Optimizer CBO RBO http://blog.csdn.net/tianlesoftware/archive/2010/08/19/5824886.aspx Oracle 索引 详解 http://blog.csdn.net/tianlesoftware/archive/2010/03/05/5347098.aspx Oracle Explain Plan http://blog.csdn.net/tianle…
1.当查询表时where条件中有多个索引时,优先使用主键索引,其它索引会失效. 2.当查询的返回的数据占总量数据的百分比小于20%时,建索引才有效果 3.不是主键的索引值可以为空,主键索引不能为空. 4.经常与其他表进行连接的表,在连接字段上应该建立索引. 5.使用索引的时候需要注意: a)能用唯一索引,一定用唯一索引 b)能加非空,就加非空约束 c)一定要统计表的信息,索引的信息,柱状图的信息. d)联合索引的顺序不同,影响索引的选择,尽量将值少的放在前面 只有做到以上四点,数据库才会正确的选…
目的:监控oracle索引的有效性,看索引有没有被使用.然后根据监控结果删除或者调整索引. 步骤: 1.监控指定索引 命令: alter index  索引名 monitoring usage;  如:alter index User_IDX1 monitoring usage; 2.查看索引监控是否生效 命令:select * from V$OBJECT_USAGE t where t.monitoring = 'YES'; 3.执行索引相关SQL 4.查看索引是否被使用 命令:select…