索引与自定义函数

索引与自定义函数

ID:46918803

大小:799.00 KB

页数:41页

时间:2019-11-30

索引与自定义函数_第1页
索引与自定义函数_第2页
索引与自定义函数_第3页
索引与自定义函数_第4页
索引与自定义函数_第5页
资源描述:

《索引与自定义函数》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、引入索引机制,是为了提高对数据库的查询效率。索引、创建与管理方法6.1索引1INSERTINTOASDVALUES(7,'F',79,22)INSERTINTOASDVALUES(2,'B',89,21)INSERTINTOASDVALUES(5,'E',94,20)INSERTINTOASDVALUES(10,'D',76,22)INSERTINTOASDVALUES(6,'A',64,20)INSERTINTOASDVALUES(4,'C',88,21)INSERTINTOASDVALUES(1,

2、'H',91,22)INSERTINTOASDVALUES(8,'G',68,19)CreatetableASD(NOintnotnull,NAMEnchar(4)notnull,SCOREnumeric(4,1)null,AGEintnotnull)go先建立一个名为“ASD”的表,并插入记录:在未建立主键约束,并未建立索引时,记录显示的顺序是物理顺序21.索引的概念(1)创建索引,可以避免全表扫描,从而提高查询速度.(2)索引是数据库对象,分别用CREATE命令建立,用DROP命令删除,用ALTE

3、R命令修改.(3)索引与与表(或视图)关联,并按表中指定的列值排列顺序的映象表。建立索引后表的存储由两部分组成:一是用来存放表的数据页面;二是用来存放索引的索引页面。索引就存放在索引页面上。(4)SQLServer读取数据的过程首先确定是否存在索引,然后查询优化器(负责生成查询的优化执行计划的组件)从表扫描和使用索引这两种方法中,确定对于数据访问哪种方式更为有效。(5)数据检索方式:先搜索索引页面,从中找到所需数据的指针,再直接通过指针从数据页面中读取数据。(6)应注意的问题:不应该在每一个列上都创建

4、索引,以免降低系统速度。 插入、删除或更新索引列比非索引列要花更长的时间。3索引顺序1A2B3C4D5E6F7G8HCREATEINDEXASD_NAME_INDONASD(NAME,ASD)索引页面数据页面行定位器已按表中NAME字段建立索引的表的存储。4索引键值顺序被引用的数据行存放顺序12345674713256行定位器索引页面数据页面52.索引的存储结构(1)簇索引(Clusteredlndex)对表的物理数据页中的数据按列进行排序,然后再重新存储到磁盘上。因此一个表只能有一个簇索引。簇索引查

5、找数据很快。(2)适于使用簇索引的情况 经常用于排序从表中检索的数据的列。 经常顺序访问的列。每个索引行包含一个键值和一个指针,分别指向数据行。(3)表中按顺序排列的序列(如拼音顺序、日期和数字顺序)在查询的时候不需要逐行查找,因此查询速度快。(4)以下数据类型的列不可用作聚集索引的键:ntext、text、varchar(max)、nvarchar(max)、varbinary(max)、xml或image6CREATECLUSTEREDINDEXASD_CLU_NO ONASD(NOASC)建立簇

6、索引后记录重新按指定列值排列了顺序,且则行定位器中存储的是簇索引的索引键:索引页行定位器数据页72)非簇索引(Nonclusteredlndex)。非簇索引将行定位器按关键字的值,用一定的方式排序。则行定位器存储的是指向数据行的指针。非簇索引检索效率较低。一个表最多可以建248个非簇索引。索引列中的数据频繁更改时应建立非簇索引。8索引顺序1A2B3C4D5E6F7G8HCREATEINDEXASD_NAME_INDONASD(NAME,ASD)索引页面数据页面行定位器在非簇索引中,行定位器存储的是指向

7、数据行的指针。数据没有按索引键重新排列顺序。912345674713256索引键值顺序被引用的数据行存放顺序行定位器10CREATECLUSTEREDINDEXAsd_clu_no¯cf2ONASD(NOASC)建立了聚集索引后,记录按索引顺序重新物理地排列了记录的顺序.一个表只能有一种物理排列方式,所以一个表只能建一个聚集索引.113.索引键的组成根据索引键的组成,可以将索引分为三种类型。1)唯一索引创建唯一索引,可确保表内的索引列中不包含重复的数据内容。2)复合索引在一个表中,通过连接或附接两个或

8、多个列值而创建的索引。3)覆盖索引当索引中包含了需要的所有信息时,这个索引称为覆盖索引。它的键值包含了满足查询条件的所有数据。126.1.2创建索引1.创建索引时,要注意几点:(1)当在表中创建主关键字约束或唯一性约束时,SQLServer自动创建一个唯一性索引。(2)如果表中已有数据,那么在创建索引时,SQLServer会检查数据的合法性。当有不合法数据时,创建索引将失败。(3)当有多个列作为关键字时,应创建复合索引,即索引包含有两个或多个列。(4)基

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。