`
hpjianhua
  • 浏览: 240989 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类

索引及其用途--SQL Server 2005

阅读更多

六.索引及其用途

 

1.索引是以表列为基础的数据库对象,它保存着表中排序的索引列。

 

2.其主要目的是提高了SQL Server系统的性能,加快数据的查询速度与减少系统的响应时间。

 

3.创建索引与维护索引都会浪费时间,对表中的数据进行增加,删除和修改操作时,索引就要进行维护,否则索引的作用就会下降;另外索引也会占用一定的物理空间,如果占用的物理空间过多,就会影响到整个数据库SQL Server系统的性能。

 

4.建立索引的原则:

 

(1)定义主键的数据列一定要建立索引。

(2)定义有外键的数据列一定要建立索引。

(3)对于经常查询的数据列最好建立索引。

      A、对于需要在指定范围内的快速或频繁查询的数据列;

  B、经常用在WHERE子句中的数据列。

(4)对于那些查询中很少涉及的列,重复值比较多的列不要建立索引。

(5)对于定义为textimagebit的数据类型的列不要建立索引。

 

5.索引的分类:

(1)聚集索引:聚集索引会对表和视图进行物理排序。

(2)非聚集索引:不对表和视图进行物理排序,最多可建立250个非聚集索引,或者249个非聚集索引与1个聚集索引。

(3)唯一索引:唯一索引不允许两行具有相同的索引值。

 

6.创建索引的语法:

CREATE [UNIQUE][CLUSTERED | NONCLUSTERED]

INDEX index_name

ON {table_name | view_name}

[WITH [index_property [,....n]]

说明:

UNIQUE: 建立唯一索引。

CLUSTERED: 建立聚集索引。

NONCLUSTERED: 建立非聚集索引。

Index_property: 索引属性。

UNIQUE索引既可以采用聚集索引结构,也可以采用非聚集索引的结构,如果不指明采用的索引结构,则SQL Server系统默认为采用非聚集索引结构。

 

7.删除索引语法:

DROP INDEX table_name.index_name[,table_name.index_name]

说明:table_name: 索引所在的表名称。

     index_name :  要删除的索引名称。

 

    8.显示索引信息:

 

    使用系统存储过程:sp_helpindex 查看指定表的索引信息。

 

    执行代码如下:

    Exec sp_helpindex book1;

 

    9.重命名索引

    语法:

    Exce sp_rename table_name.old_index_name, new_index_name

 

    10.显示查询计划的命令为:

    SET SHOWPALN_ALL ON | OFF 或 SET SHOWPLAN_TEXT ON | OFF

    说明:帮助用户分析有哪些索引被系统采用。

 

    例子:

    USE book

    GO

    SET SHOWPLAN_ALL ON

    GO

    SELECT * FROM book1 WHERE 编号='YBZT2406'

    GO

    SET SHOWPLAN_ALL OFF

    GO 

    说明:在Set showplan命令与select 命令之间一定要有 go语句。

 

   11.设置是否显示磁盘IO统计的命令为:

   SET STATISTICS IO ON | OFF

 

   12.索引的维护

   更新索引的语法:

   UPDATE STATISTICS table_name index_name

 

   使用DBCC SHOWCONTIG 语句扫描表语法:

   DBCC SHOWCONTIG (table_name, index_name)

 

   使用DBCC INDEXDEFRAG语句进行碎片整理语法:

   DBCC SHOWDEFRAG(database_name,table_name,index_name)

 

0
0
分享到:
评论

相关推荐

    SQL Server 2005基础教程

    - **掌握SQL Server系统的体系结构**:理解SQL Server 2005的核心组件及其工作原理。 - **熟悉数据库和数据库对象的特点**:掌握不同类型数据库及其对象的特性和用途。 - **认识管理工具**:了解SQL Server提供的...

    SQL SERVER T-SQL

    - **触发器**:介绍触发器的概念及其用途,通过在特定事件发生时自动执行预定义操作来确保数据完整性。 #### 八、表约束与事务 - **表约束**:探讨如何使用表约束如PRIMARY KEY、FOREIGN KEY等来确保数据的完整性和...

    第-章-SQL-Server数据库管理优秀文档.ppt

    首先,SQL Server数据库的简介强调了其作为数据库管理系统的主要功能,即管理数据库及其对象。它提供企业管理器和查询分析器两个工具,前者是图形化的用户界面,便于用户直观地操作数据库,后者则允许通过SQL语句...

    SQL Server 2008 Transact SQL Receipe

    ### SQL Server 2008 Transact-SQL Recipes #### 概述 SQL Server 2008 Transact-SQL Recipes 是一本专为数据库管理员、开发者以及任何希望深入理解 SQL Server 2008 中 Transact-SQL 功能的专业人士所编写的书籍。...

    SQL SERVER-2008从入门到精通.pdf

    11. **Integration Services**:理解SSIS(SQL Server Integration Services)的用途,学习数据导入导出、ETL(提取、转换、加载)过程的构建。 12. **Analysis Services**:了解OLAP(在线分析处理)和数据挖掘,...

    Beginning SQL Server 2005 Programming

    ### SQL Server 2005 编程基础 #### 一、概述 《Beginning SQL Server 2005 Programming》是一本专为SQL Server开发人员编写的入门级教材,旨在帮助初学者掌握SQL Server 2005的基础编程技能。本书由Robert Vieira...

    sql server面试题

    SQL Server是一种广泛使用的关系型数据库管理系统,由微软公司开发,用于存储、管理和检索数据。在SQL Server面试中,面试官通常会考察候选人对SQL语言、数据库设计、性能优化、安全性及事务处理等多方面的能力。...

    SQL Server 2000系统表地图.rar_sql_sql server_sql server 2000_多变量

    压缩包中的"SQL Server 2000系统表地图.chm"很可能是一个帮助文件,它详细地解释了每个系统表的字段含义和用途。通常,这种文档会包含如何查询这些表以获取特定信息的例子,以及如何使用这些信息来解决实际问题。...

    Microsoft SQL Server 保留关键字

    本文将详细介绍Microsoft SQL Server中的保留关键字及其用途。 #### 一、SQL Server 保留关键字分类 SQL Server 的保留关键字可以分为以下几类: 1. **数据定义语言 (DDL) 关键字**:用于创建、修改和删除数据库...

    SQL Server 2000 完结篇 性能调优与维护系列视频教程

    - **DBCC命令介绍**:列举了常用的DBCC命令及其用途,如DBCC CHECKDB用于验证数据库一致性等。 - **维护操作**:指导如何使用DBCC命令进行表重组、统计更新等日常维护任务。 - **性能调节**:展示了如何通过DBCC命令...

    sql server系统表详细说明

    本文将详细介绍SQL Server中几个关键的系统表,包括其用途和所包含的主要信息。 #### 二、具体系统表说明 **1. sysaltfiles** - **定义**: 包含与数据库中的文件相对应的行。该表存储在`master`数据库中。 - **...

    SQL_Server2005实现与维护(MCTS_教程)13

    根据提供的标题、描述以及标签,我们可以推断出这份文档主要关注的是SQL Server 2005的实现与维护。虽然给定的部分内容并未提供具体的知识点,但基于这些信息,我们可以构建一系列关于SQL Server 2005的核心知识点。...

    SqlServer默认数据库

    **SqlServer默认数据库** 在SQL Server中,"默认数据库"指的是当用户或应用程序连接到服务器时,如果没有明确指定要使用的数据库,系统将自动连接到的数据库。这个默认数据库通常是`master`,它存储着SQL Server...

    SQL Server 2012 T-SQL Recipes

    ### SQL Server 2012 T-SQL Recipes #### 一、概述 《SQL Server 2012 T-SQL Recipes》是一本针对SQL Server 2012数据库管理系统的全面指南,它不仅适合初学者,也适用于有一定经验的专业人士。本书通过一系列实践...

    Beginning Microsoft SQL Server 2008 Administration.pdf

    3. **第三章:SQL Server 2008 Tools** - 讨论了SQL Server 2008中可用的各种工具,如SQL Server Management Studio (SSMS)、SQL Server Configuration Manager等,并介绍了它们的主要功能和用途。 4. **第四章:SQL...

Global site tag (gtag.js) - Google Analytics