`

数据库索引创建规则

阅读更多
1、表的主键、外键必须有索引;
2、数据量超过300的表应该有索引;
3、经常与其他表进行连接的表,在连接字段上应该建立索引;
4、经常出现在Where子句中的字段,特别是大表的字段,应该建立索引;
5、索引应该建在选择性高的字段上;
6、索引应该建在小字段上,对于大的文本字段甚至超长字段,不要建索引;
7、复合索引的建立需要进行仔细分析;尽量考虑用单字段索引代替:
A、正确选择复合索引中的主列字段,一般是选择性较好的字段;
B、复合索引的几个字段是否经常同时以AND方式出现在Where子句中?单字段查询是否极少甚至没有?如果是,则可以建立复合索引;否则考虑单字段索引;
C、如果复合索引中包含的字段经常单独出现在Where子句中,则分解为多个单字段索引;
D、如果复合索引所包含的字段超过3个,那么仔细考虑其必要性,考虑减少复合的字段;
E、如果既有单字段索引,又有这几个字段上的复合索引,一般可以删除复合索引;搜索
8、频繁进行数据操作的表,不要建立太多的索引;
9、删除无用的索引,避免对执行计划造成负面影响;
以上是一些普遍的建立索引时的判断依据。一言以蔽之,索引的建立必须慎重,对每个索引的必要性都应该经过仔细分析,要有建立的依据。因为太多的索引与不充分、不正确的索引对性能都毫无益处:在表上建立的每个索引都会增加存储开销,索引对于插入、删除、更新操作也会增加处理上的开销。另外,过多的复合索引,在有单字段索引的情况下,一般都是没有存在价值的;相反,还会降低数据增加删除时的性能,特别是对频繁更新的表来说,负面影响更大。
分享到:
评论

相关推荐

    2数据库设计规范.doc

    保密级别: 绝密 机密 秘密 内部公开 数据库设计规范 变更记录 "版本号 "修改点说明 "变更日期 "变更人 "审批人 " "V1.0 "创建 " " " " " " " " " " " " " " " " " ...5 3.9 函数(Function)的命名规则 5 3.10 索引(Ind

    非常好的数据库开发规范

    6.2 索引创建的一些基本规则 6.3 索引使用的一些基本规则 附录一(性能相关事项) 7.1 让SQL走合理索引,避免全表扫描 7.2 避免类型转换 7.3 限制查询的时间范围 7.4 UNION&UNION; ALL的使用原则 7.5 LIKE的使用原则...

    神通数据库-数据库快速入门.pdf

    使用数据库创建应用程序时,过程语言是应用程序和数据库之间的主要编程接口。神通数据库中所提 供的过程语言是 plOSCAR。在使用 plOSCAR 程序时,可用两种方法存储和执行程序。可以在本地存储程 序,并创建向数据库...

    数据库和数据库表的操作.docx

    掌握数据库表的有效性规则的设置和表之间永久关系的建立。 二.实验内容 1. 在"学生管理.pjx"中创建一个数据库,取名为"学生.dbc"。 2. 将自由表xs.dbf加入"学生"数据库中,并改名为学生登记表.dbf。在"学生"数据库...

    8数据库设计规范.doc

    保密级别: 绝密 机密 秘密 内部公开 数据库设计规范 变更记录 "版本号 "修改点说明 "变更日期 "变更人 "审批人 " "V1.0 "创建 " " " " " " " " " " " " " " " " " ...5 3.9 函数(Function)的命名规则 5 3.10 索引(Ind

    MySQL创建全文索引分享

    在MySql数据库中,有四种索引:聚焦索引(主键索引)、普通索引、唯一索引以及我们这里将要介绍的全文索引(FUNLLTEXT INDEX)。 全文索引(也称全文检索)是目前搜索引擎使用的一种关键技术。它能够利用【分词技术...

    数据库实战.doc数据库实战.doc

    数据库设计:根据业务需求和数据特点,设计合理的数据库结构,包括表结构、字段定义、索引等。在设计过程中,需要考虑到数据的完整性、一致性、可扩展性和安全性等因素。 数据库创建:根据设计好的数据库结构,使用...

    高级数据库SQL课件

    了解设计数据库的基本步骤 熟练使用T-SQL实现建库、建表、加约束 掌握T-SQL编程,实现功能强大的查询 掌握创建索引、视图,快速访问数据库 掌握创建存储过程,实现复杂的业务规则

    数据库学习基础之名词解释

    在数据库画板中可以显示数据库中的所有数据表(即使不是用PowerBuilder创建的表),创建数据表,修改表的定义等数据表是数据库中一个非常重要的对象,是其他对象的基础。没有数据表,关键字、主键、索引等也就...

    数据库课程设计题目汇总.doc

    (1) 课程设计的题目、系统的总体功能描述 (2) 需求分析(概括描述、DFD、DD) (3) 数据库概念结构设计(局部E-R图、基本E-R图) (4) 数据库逻辑结构设计(关系模式—列表形式、存储过程、触发器、视图、索引) (5) 应用...

    数据库设计模板.docx

    提示:数据库设计人员根据需求文档,创建与数据库相关的那部分实体关系图(ERD)。如果采用面向对象方法(OOAD),这里实体相当于类(class)。 数据库设计模板全文共27页,当前为第3页。 物理设计 提示: (1)主要...

    4数据库设计规范.doc

    保密级别: 绝密 机密 秘密 内部公开 数据库设计规范 变更记录 "版本号 "修改点说明 "变更日期 "变更人 "审批人 " "V1.0 "创建 " " " " " " " " " " " " " " " " " ...5 3.9 函数(Function)的命名规则 5 3.10 索引(Ind

    达梦数据库_SQL语言手册

    数据库、登录、用户、模式、基表、视图、索引、序列、全文索引、存储过程和触发器 的定义和删除语句,登录、基表、视图、仝文索引的修改语句,对象的更名语句; 査询(含全文检索)、插入、删除、修改语句; 数据库安全...

    使用Visio进行数据库设计.doc

    概念模型 概念数据库模型图描述了组织的事实、业务规则和信息需求。它们隐藏了对于理解所 存储数据的基本相互关系毫无用处的特定存储细节。您可以使用"ORM 源模型"模板来创建概念数据库模型。 因为概念数据库模型图...

    1数据库大作业.doc

    6 2.2设置约束 6 2.2.1设置主键约束 6 2.2.2设置外键约束 6 2.2.3设置check约束 6 2.2.4设置默认值 6 2.2.5设置规则 6 2.3建立索引 6 2.4创建视图 6 2.5查询 7 1数据库设计 数据库在一个信息管理系统中占有非常重要...

    mysql 数据库 掌握关系数据库SQL语言和使用技术

    了解数据管理技术发展的过程,掌握数据库系统的基本概念、体系结构 MySQL的安装和配置 ...掌握创建索引、视图,快速访问数据库 掌握创建存储过程、触发器,实现复杂的业务规则 备份和恢复 安全和权限

    数据库实验(1-4)SQL Server 2012数据库系统

    掌握使用SQL语言创建数据库、表、索引和修改表结构。 2、掌握SQL语言对数据库完整性的支持。 掌握约束、规则、默认的使用方法 掌握参照完整性设置的方法 掌握用企业管理器创建和SQL创建、修改的方法 实验二...

    数据库原理及应用实验五(数据完整性和安全性)

    5. 掌握规则的创建、实施与删除方法。 6. 掌握级联删除、级联修改方法。 7. 理解索引的概念与类型。 8. 掌握使用SQL Server Management Studio创建与维护索引的方法。 9. 掌握T-SQL语句创建与维护索引的方法。 10. ...

    Oracle数据库管理员技术指南

    1.1 数据库创建规划 1.1.1 规划以及提出正确的问题 1.1.2 怎样确定恰当的数据块尺寸 1.2 组织文件系统 1.2.1 怎样命名数据库文件 1.2.2 使用最佳灵活结构 1.2.3 怎样配置符合 OFA 的 Oracle 文件 系统 1.3 ...

    海量数据库解决方案_韩国_李华植

    1.2.5 索引组织表的创建25 1.3 聚簇表26 1.3.1 聚簇表的概念27 1.3.2 单表聚簇29 1.3.3 复合表聚簇31 1.3.4 聚簇表的代价34 1.3.5 哈希聚簇39 .第2章 索引的类型和特征43 2.1 b-tree 索引44 2.1.1 b-tree 索引的结构...

Global site tag (gtag.js) - Google Analytics