欢迎来到天天文库
浏览记录
ID:44092576
大小:1.07 MB
页数:37页
时间:2019-10-18
《第6章创建和优化索引》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第6章创建和优化索引SQLServer2005数据库开发与实现第1章:SQLServer2005启航第2章:安装和配置SQLServer2005第3章:创建数据库和数据库文件第4章:创建数据类型和表第5章:使用Transact-SQL查询数据库第6章:创建和优化索引第7章:实现数据完整性第8章:实现视图第9章:实现存储过程和函数第10章:使用XML第11章:灾难恢复第12章:管理安全性第13章:监视SQLServer第14章:维持高可用性第15章:自动执行管理任务第16章:使用ServiceBroker第17章:传输数据第18章:复制功能简介第6章:创建和优化索引规划索引创建索引优化索引进行
2、全文搜索实验习题SQLServer访问数据的方式表扫描SQLServer扫描表的所有页索引SQLServer使用索引页找到行6.1.1SQLServer访问数据的方式没有聚集索引的表不按特定顺序存储的页堆堆IAM页数据页idindex_id=0first_iam_pagesys.partitions6.1.2堆聚集索引索引页叶节点一张表只能有一个聚集索引B树按索引键的顺序存储数据页idindex_id=1root_pagesys.partitions索引页中间级根索引页…………6.1.3聚集索引B树参考下面的堆和聚集索引每张表最多249个非聚集索引非聚集索引idindex_id>1root_
3、pagesys.partitions数据页堆或者聚集索引索引页叶节点…………根索引页6.1.4非聚集索引第6章:创建和优化索引规划索引创建索引优化索引进行全文搜索实验习题WITH选项目的ALLOW_ROW_LOCKS在索引上允许/不允许行级锁ALLOW_PAGE_LOCKS在索引上允许/不允许页级锁ONLINE在创建的时候允许/不允许访问索引FILLFACTOR控制在叶级页上释放控件PAD_INDEX控制在非叶级页上释放空间CREATE[UNIQUE][CLUSTERED
4、NONCLUSTERED]INDEXindex_nameON{table
5、view}(column[ASC
6、DESC]
7、[,...,n])INCLUDE(column[,...,n])[WITHoption[,...,n]][ON{partition_scheme(column)
8、filegroup
9、"default"}]CREATEINDEX语句6.2.1CREATEINDEX语句唯一索引确保在索引键上不存在相同的值CREATEUNIQUENONCLUSTEREDINDEX[AK_Employee_LoginID]ON[HumanResources].[Employee]([LoginID]ASC)EmployeeIDLoginIDGenderMaritalStatus…216mike0MS…231
10、fukiko0MM…242pat0MS…291pat0FS……不允许存在相同值6.2.2唯一索引创建多列索引复合索引最多可组合16个列以及键的长度不超过900B首先定义唯一性最高的列包含性列带包含性列的索引提供查询范围,提高查询性能CREATENONCLUSTEREDINDEXAK_Employee_LoginIDONHumanResources.Employee(LoginIDASC)INCLUDE(ContactID,NationalIDNumber)CREATENONCLUSTEREDINDEXK_Contact_LastName_FirstNameONPerson.Contac
11、t(LastNameASC,FirstNameASC)6.2.3创建多列索引非键列可以是不允许作为索引键列的数据类型在计算索引键列的数目或索引键大小时,不会被考虑在内USEAdventureWorks;GOCREATEINDEXIX_Document_TitleONProduction.Document(Title,Revision)INCLUDE(FileName);使用Transact-SQL创建具有包含性列的索引6.2.4使用Transact-SQL创建具有包含性列的索引对计算列创建索引的场合在以下情况下,可对计算列创建索引:计算列表达式是确定性的和精确的ANSI_NULLS连接级选项
12、为ON求值结果不为text、ntext或者image数据类型的列当创建索引和修改索引的时候要求的选项设置为ONNUMERIC_ROUNDABORT选项设置为OFF提示:查询优化器可能忽略计算列上的索引6.2.5对计算列创建索引的场合<20032003~20042004~2005>2005与分区表类似,根据值范围将索引进行水平分区idindex_idpartition_numberhobt_id12167567
此文档下载收益归作者所有