网络数据库10 SQL server建立索引研究报告.pptVIP

网络数据库10 SQL server建立索引研究报告.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
B. 创建简单非聚集组合索引 以下示例为Sales.SalesPerson 表的SalesQuota 和SalesYTD 列创建非聚集组合索引。 USE AdventureWorks GO IF EXISTS (SELECT name FROM sys.indexes WHERE name = NIX_SalesPerson_SalesQuota_SalesYTD) DROP INDEX IX_SalesPerson_SalesQuota_SalesYTD ON Sales.SalesPerson ; GO CREATE NONCLUSTERED INDEX IX_SalesPerson_SalesQuota_SalesYTD ON Sales.SalesPerson (SalesQuota, SalesYTD); GO C. 创建唯一非聚集索引 以下示例为Production.UnitMeasure 表的Name 列创建唯一的非聚集索引。该索引将强制插入Name 列中的数据具有唯一性。 USE AdventureWorks; GO IF EXISTS (SELECT name from sys.indexes WHERE name = NAK_UnitMeasure_Name) DROP INDEX AK_UnitMeasure_Name ON Production.UnitMeasure; GO CREATE UNIQUE INDEX AK_UnitMeasure_Name ON Production.UnitMeasure(Name); GO 以下查询通过尝试插入与现有行包含相同值的一行来测试唯一性约束。 --Verify the existing value. SELECT Name FROM Production.UnitMeasure WHERE Name = NOunces; GO INSERT INTO Production.UnitMeasure (UnitMeasureCode, Name, ModifiedDate) VALUES (OC, Ounces, GetDate()); D. 使用IGNORE_DUP_KEY 选项 以下示例首先在该选项设置为ON 时在临时表中插入多行,然后在该选项设置为OFF 时执行相同操作,以演示IGNORE_DUP_KEY 选项的影响。单个行被插入#Test 表,在执行第二个多行INSERT 语句时将导致出现重复值。表中的行计数会返回插入的行数。 USE AdventureWorks; GO CREATE TABLE #Test (C1 nvarchar(10), C2 nvarchar(50), C3 datetime); GO CREATE UNIQUE INDEX AK_Index ON #Test (C2) WITH (IGNORE_DUP_KEY = ON); GO INSERT INTO #Test VALUES (NOC, NOunces, GETDATE()); INSERT INTO #Test SELECT * FROM Production.UnitMeasure; GO SELECT COUNT(*)AS [Number of rows] FROM #Test; GO DROP TABLE #Test; GO 但将IGNORE_DUP_KEY 设置为OFF。 USE AdventureWorks; GO CREATE TABLE #Test (C1 nvarchar(10), C2 nvarchar(50), C3 datetime); GO CREATE UNIQUE INDEX AK_Index ON #Test (C2) WITH (IGNORE_DUP_KEY = OFF); GO INSERT INTO #Test VALUES (NOC, NOunces, GETDATE()); INSERT INTO #Test SELECT * FROM Production.UnitMeasure; GO SELECT COUNT(*)AS [Number of rows] FROM #Test; GO DROP TABLE #Test; GO E. 使用DROP_EXISTING 删除和重新创建索引 以下示例使用DROP_EXISTING 选项在Production.WorkOrder 表的ProductID 列上删除并重新创建现有索引。还设置了FILLFACTOR 和PAD_INDEX 选项。 USE Adventur

文档评论(0)

yuzongxu123 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档