索引及数据完整性41索引

索引及数据完整性41索引

ID:27773060

大小:267.50 KB

页数:50页

时间:2018-12-03

索引及数据完整性41索引_第1页
索引及数据完整性41索引_第2页
索引及数据完整性41索引_第3页
索引及数据完整性41索引_第4页
索引及数据完整性41索引_第5页
资源描述:

《索引及数据完整性41索引》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章索引及数据完整性4.1索引4.3SQLSERVER数据完整性4.2全文索引主要内容索引类型、数据完整性的分类创建索引的方法掌握索引的维护各种约束及默认值数据完整性的实现4.1.1索引的简介及分类索引是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。它提供了数据库中编排表中数据的内部方法。通常情况下一个表的存储是由两部分组成的,一部分用来存放表的数据页面,另一部分存放索引页面。索引就存放在索引页面上,通常,索引页面相对于数据页面来说小得多。唯一索引和非唯一索引聚集索引和非聚集索引单列索引、复合索引和包含性列索引视图索引全文索引4.1.2索引

2、的分类4.1.2创建索引的注意事项1.要合理的建立索引,而不要认为索引越多越好,否则不仅达不到提高性能的目的,反而会适得其反2.每个表只能有一个聚簇(聚集)索引3.聚集索引适合于检索连续键值表4.1合理使用聚集索引和非聚集索引4.1.3创建索引创建索引的方法有直接和间接的方法1.直接方法2.间接方法4.1.3.1间接创建索引1.主键索引(PrimaryKey约束)1)打开SQLServerManagementStudio,连接到本地数据库实例,在【对象资源管理器】中展开目录树“数据库”

3、“xuesheng”

4、“表”

5、“学生”,单击鼠标右键,选择【修改】命令,系统打开表设计器窗口

6、。2)在表设计器中,选择“学号”字段,单击【表设计器】工具栏中的【设置主键】工具,则在字段“学号”字段的前面多了一个小钥匙的图标。如图4.1所示。图4.1利用设置主键间接创建索引2.唯一约束(Unique约束)例4-1:创建一个成绩表,其中包含主键和Unique约束,创建后查看其索引信息。其相应的SQL命令如下:USExueshengCREATETABLE成绩(学号INTNOTNULL,课程号NUMERICUNIQUE,/*唯一约束*/成绩NUMERIC)4.1.3.2在SQLServerManagementStudio中创建索引1.打开“SQLServerManagement

7、Studio”窗口,连接到本地实例,在【对象资源管理器】窗口中,依次展开XUEXIAO-6BNZNGY

8、数据库

9、xuesheng

10、索引的树型目录。2.右击“索引”,在弹开的快捷菜单中选择【新建索引】命令,如图4.5所示。图4.5直接方法创建索引4.1.3.3用Createindex语句创建索引CREATE[UNIQUE][CLUSTERED

11、NONCLUSTERED]INDEXindex_nameON{table

12、view}(column[ASC

13、DESC][,...n])[with[PAD_INDEX][[,]FILLFACTOR=fillfactor][[,]IGNORE_

14、DUP_KEY][[,]DROP_EXISTING][[,]STATISTICS_NORECOMPUTE][[,]SORT_IN_TEMPDB]][ONfilegroup]CREATEINDEX命令创建索引各参数说明如下:UNIQUE:用于指定为表或视图创建唯一索引,即不允许存在索引值相同的两行。CLUSTERED:用于指定创建的索引为聚集索引。NONCLUSTERED:用于指定创建的索引为非聚集索引。ON:表示可以在表或视图上创建索引,这里指定表或视图的名称和相应的列名称。index_name:用于指定所创建的索引的名称。table:用于指定创建索引的表的名称。view:用于

15、指定创建索引的视图的名称。ASC

16、DESC:用于指定具体某个索引列的升序或降序排序方向。Column:用于指定被索引的列。PAD_INDEX:为非叶级索引页指定填充度。FILLFACTOR=fillfactor:用于指定在创建索引时,每个索引页的数据占索引页大小的百分比,fillfactor的值为1到100。IGNORE_DUP_KEY:指定出先冗余数据的系统行为。DROP_EXISTING:用于指定应删除并重新创建已命名的先前存在的聚集索引或者非聚集索引。STATISTICS_NORECOMPUTE:用于指定过期的索引统计不会自动重新计算。SORT_IN_TEMPDB:用于指

17、定创建索引时的中间排序结果将存储在tempdb数据库中。ONfilegroup:用于指定存放索引的文件组。例4-2:为表“学生”中字段“学号”创建一聚集索引。usexueshengIFEXISTS(SELECTnamefromsysindexeswherename="'PK_XH"')DROPINDEXxuesheng.PK_XHGOCREATEINDEXPK_XHON学生(学号)例4-3:为表“学生”中字段“姓名”创建了一个唯一聚集索引,要求使用FILLFACTOR子句。usexueshe

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

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

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