Oracle 数据库中创建合理的数据库索引(2)
来源:asp之家 发布时间:2009-07-02 12:31:00
二、 根据列的特征来创建索引。
列的特点不同,索引创建的效果也不同。数据库管理员需要了解为哪些列创建索引可以起到事倍功半的效果。同时也需要了解为哪些列创建索引反而起到的是事倍功半的效果。这有利于他们了解到底给为怎么样的字段建立索引。
根据笔者的经验,往往为如下特征的列创建索引能够起到比较明显的效果。如对于一些重复内容比较少的列,特别是对于那些定义了唯一约束的列。在这些列上建立索引,往往可以起到非常不错的效果。如对于一些null值的列与非Null值的列混合情况下,如果用户需要经常查询所有的非Null值记录的列,则最好为其设置索引。如果经常需要多表连接查询,在用与连接的列上设置索引可以达到事半功倍的效果。
可见,索引设置的是否恰当,不仅跟数据库设计架构有关,而且还跟企业的经济业务相关。为此,对于一些套装软件,虽然一开始数据库管理员已经做了索引的优化工作。但是随着后来经济数据的增加,这个索引的效果会越来越打折扣。这主要是因为记录的表化影响到了索引优化的效果。所以笔者建议各位数据库管理员,即使采用的是大牌软件公司的套装软件,也需要隔一段时间,如一年,对数据库的索引进行优化。该去掉的去掉,该调整的调整,以提高数据库的性能。
如在数据库中有一张表是用来保存用户信息的。其中有个字段身份证号码,这是一个唯一的字段。在数据库设计时,给这个字段创建了索引。但是当这个数据库投入使用之后,用户不怎么输入用户的身份证号码。而且平时也基本不按这个号码来进行查询。当记录月来月多时,这个身份证号码上的索引字段不但不能够改善数据库的查询性能,反而成了鸡肋。对于这些有很多NULL值的列,而且不会经常查询所有的非NULL值记录的列,数据库管理员要下决心,即使清除这些列上的索引。
所以说索引的优化与调整是一个动态的过程,并不是说数据库设计好之后就不需要经过调整。数据库管理员往往需要根据记录的变化情况,来进行适当的变更。以提高索引的效果。


猜你喜欢
- 原来在一本书上看到过,从多个tfrecord文件中读取数据的方法,今天想用在网上找了一下,现在记录一下,免得自己以后忘记了又不好找,tfre
- 因此,在数据库的日常维护工作中,如果只是一次两次碰到ORA-01555错误,一般都先忽略,但是如果经常碰到该错误,则要进行一些调整以避免该错
- 有些人说py中有两个函数可以实现对所有函数的了解以及使用,其中之一,就是我们今天要讲解的help函数。有些小伙伴可能比较陌生,但是另一个函数
- 以mysql-noinstall-5.0.22-win32为例,解压缩后会看到mysql-5.0.22-win32文件夹下面,有五个ini格
- 在我们制作网页的时候会经常碰到一些需求,如果不知道方法,说不定会困扰我们半天。其实实现它们都很简单,下
- 获取节点的两种方式: 1、通过event对象的srcElement属性; &nbs
- 近期线上出现一个bug,研发的小伙伴把测试环境的地址写死到代码中,在上线前忘记修改,导致线上发布的代码中使用了测试环境地址。开发过程中虽然有
- 前言在laravel项目开发中,经常使用到公共函数,那如何在laravel配置全局公共函数呢??下面话不多说了,来一起看看详细的介绍吧方法如
- 一、dlib以及opencv-python库安装介于我使用的是jupyter notebook,所以在安装dlib和opencv-pytho
- 如下所示:# -*- coding: utf-8 -*-import sys, urllib, urllib2, jsoncity=urll
- Vue的项目中,如果项目简单, 父子组件之间的数据传递可以使用 props 或者 $emit 等方式 进行传递但是如果是大中型项目中,很多时
- 本篇文章将带你了解报表自动化的流程,并教你用Python实现工作中的一个报表自动化实战,篇幅较长,建议先收藏,文章具体的目录为:1.Exce
- 异常可以防止出现一些不友好的信息返回给用户,有助于提升程序的可用性,在java中通过try ... catch ... finally来处理
- 升级并不容易,但是有一些特性值得花时间了解。下面本文将介绍一些避免升级问题的技巧。升级一个关键业务SQL Server实例并不容易;它要求有
- 根据google最新的算法规则:用户行为模式的重视程度越来越高,这也就要求网页设计的时候应注意“合理的网页结构”,SEO业界也有个共识“网页
- python永久添加搜索路径_Python sys.path永久添加在用户目录下,找到隐藏文件.bashrc 文件然后在末尾添加export
- 一个完整的程序离不开日志,无论是开发阶段,还是测试阶段,亦或程序运行阶段,都可以通过日志查看程序的运行情况,或是定位问题。下面是对 pyth
- 安装部分所需文件在最下方提供STEP1双击mysql-installer-web-community-8.0.18.0.msi进行按钮如果出
- 首先声明,在这组里我是个绝对的菜鸟。再次声明,小爝这个菜鸟在“网页设计”这个圈里混了快1年了。 摘要:我知道我有多少底,所以我在总结我的成长
- 第一次发博客,还有点小激动,本人现在正在天津上大学,希望以后从事前端这一行业,学习的时间不长,写博客为了记录自己的学习过程和收获,当然也算是