SQL语言-建立和删除索引.ppt

上传人:za****8 文档编号:2993475 上传时间:2019-12-05 格式:PPT 页数:9 大小:375.27KB
返回 下载 相关 举报
SQL语言-建立和删除索引.ppt_第1页
第1页 / 共9页
SQL语言-建立和删除索引.ppt_第2页
第2页 / 共9页
SQL语言-建立和删除索引.ppt_第3页
第3页 / 共9页
点击查看更多>>
资源描述
第4章 SQL语言,4.6 建立与删除索引,概念:SQL Server的索引是一个单独的、物理的数据结构,是为了加速对表中数据行的检索而创建的一种分散的存储结构。 索引是针对一个表而建立的,每个索引页面中的行都含有逻辑指针,指向数据库表中的物理位置,以便加速检索物理数据。 索引包含从表或视图中一个或多个列生成的键,以及映射到指定数据的存储位置的指针。当SQL Server 2005执行查询时,查询优化器会对可用的数据检索方法的成本进行估计,从中选用最有效的查询计划。,1、索引的概念,在数据库中使用索引的优点如下: 加速数据检索:索引能够提供以一列或多列的值为基础迅速查找或存储表的行的能力。 加速连接、排序和分组:连接、排序和分组都需要数据检索,在建立好索引后,其数据检索速度会加快,从而加速连接等操作。 优化查询:在执行查询时,都会先对查询进行优化。查询优化器是依赖于索引起作用的,用于决定到底哪些索引可以使该查询最快。 强制实施行的唯一性:通过给列创建唯一索引,可以保证表中的数据不重复。,2、索引的用途,3、索引的类型,SQL Server 中提供的索引类型常用的有聚集索引、非聚集索引和唯一索引3种类型。 聚集索引和非聚集索引是按照索引的存储结构划分的,而唯一索引和非唯一索引是按照索引取值划分的。 (1)聚集索引。在聚集索引中,索引键值的顺序与数据表中记录的物理顺序相同,由于记录行只能按一个物理顺序存储,因此每个表只能有一个聚集索引。,3、索引的类型,(2)非聚集索引。非聚集索引具有独立于数据行的结构,非聚集索引的每个键值项都有指向包含该键值的数据行的指针。每个表最多可以创建249个非聚集索引,用以满足多种查询的需要。 (3)唯一索引。唯一索引可以确保所有数据行中任意两行的索引列不包括NULL在内的重复值。 创建主键约束时,如果表上还没有创建聚集索引,则SQL Server 将自动在创建主键约束的列或组合上创建聚集唯一索引,主键列不允许为空值。,4、设计索引的基本原则,在数据库表上设计索引时,应考虑以下常用的基本原则: 一个表创建大量索引,会影响INSERT、UPDATE和DELETE语句的性能。 若表的数据量大,对表数据的更新较少而查询较多,可以创建多个索引来提高性能。 当视图包含聚合、表连接或两者的组合时,在视图上创建索引可以显著的提升性能。 可以对唯一列或非空列创建聚集索引。每个表只能创建一个聚集索引。 在包含大量重复值的列上创建索引,查询的时间会较长。 若查询语句中存在计算列,则可考虑对计算列值创建索引。 索引大小的限制,最大键列数为16,最大索引键大小为900字节。在实际创建时一定要考虑此限制。,5、创建索引,创建索引: CREATE UNIQUE CLUSTERED|NONCLUSTERED INDEX ON ( , n ) UNIQUE:创建唯一索引。 CLUSTERED:创建聚簇索引。 NONCLUSTERED:创建非聚簇索引。 如果没有指定索引类型,则默认是创建非聚簇索引。,示例,例1为Student表的Sname列创建非聚簇索引。 CREATE INDEX Sname_ind ON Stuent ( Sname ) 例2为Student表的Sid列创建惟一的聚簇索引。 CREATE UNIQUE CLUSTERED INDEX Sid_ind ON Stuent (Sid ),6、删除索引,删除索引语句格式: DROP INDEX 例3删除Student表中的Sname_ind索引。 DROP INDEX Sname_ind,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!