- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第7章 视图、索引和事务
;回顾;理论内容;视图是一种数据库对象,是一个从一张表、多张表或视图中导出的虚表。视图的结构和数据是对数据表进行查询的结果。
视图仅存放视图的定义,不存放视图所对应的数据。
视图如果基表中的数据发生变化,则从视图中查询出的数据也随之改变。
视图的特点:
关注点聚焦
简化操作
定制数据
合并分割数据
提供安全机制
;使用SSMS管理平台,创建团购价高于400元的商品信息视图,用于查看商品类型名、商品标题和团购价。
视图创建完成后,点击“保存”并命名为“v_Product_Category”。通常约定视图名以“v”作为前缀,并用下划线连接基表名。
SELECT * FROM v_Product_Category。
;创建视图语法。
CREATE VIEW [ schema_name . ] view_name??? [ (column [ ,...n ] ) ]AS SELECT_statement
使用T-SQL语句创建团购价高于400元的商品信息视图,用于查看商品类型名、商品标题、团购价、地区名和商店名。
;视图中的列不仅可以是基表的数据列,还可以是计算列或聚合函数列。
例:创建一个视图,用于生成每个订单的金额,并利用该视图更新订单表中相应订单的金额。
生成每个订单的金额,需联接订单表、订单详细表和商品表,并根据订单分组、汇总每个订购明细的金额。
在子查询中使用视图用于更新订单表金额。
;SQL Server数据访问方法
表扫描法:从表的起始处逐行查找,直至找到符合查询条件的记录为止。
索引法:系统会通过遍历索引结构来查找行的存储位置,相比表扫描法,效率大为提高。
索引的作用
增强数据记录的唯一性。
可以大大加快数据检索的速度。
加速表与表之间的连接,这在实现数据参照完整性方面有特殊的意义。
使用ORDER BY和GROUP BY子句进行检索数据时,可以显著减少在查询中排序和分组所占用的时间。
;索引使用的代价
维护索引,在对数据进行插入、更新和删除操作时会耗费系统时间。
在建立索引时,由于需要复制数据,也会耗费系统的时间和空间。
可在以下场合创建索引
主键、外键。
需要在指定范围快速或频繁查询的列。
需要排序的列。
在聚合函数中使用的列。
;以存储结构区别,有“聚集索引”(Clustered Index,也称聚类索引、簇集索引)和“非聚集索引”(NonClustered Index,也称非聚类索引、非簇集索引)。
以数据的唯一性区别,有“唯一索引”(Unique Index)和“非唯一索引”(NonUnique Index)。
以索引列的个数区分,则有“单列索引”与“多列索引”。
;聚集索引特点:
将数据行的值在表内排序,并存储对应的数据记录,使数据表物理顺序与索引顺序相一致。
当以某字段作为关键字建立聚集索引时,表中数据以该字段作为排序依据。
一个表仅能建立一个聚集索引,但该索引可以包含多个列(组合索引)
主键默认为聚集索引 。;非聚集索引特点:
完全独立于数据行的结构。
非聚集索引中的数据排列顺序并非表中数据的排列顺序。
一个表可以拥有多个非聚集索引,每个非聚集索引提供访问数据的不同排序顺序。
在默认情况下,SQL Server所建立的索引是非聚集索引。;聚集索引与非聚集索引比较;系统自动创建索引
系统在创建表中的其他对象时,可以附带创建新索引。通常情况下,在创建UNIQUE约束或PRIMARY KEY约束时,SQL Server会自动为这些约束列创建聚集索引。
用户创建索引
使用SQL Server Management Studio的对象资源管理器。
利用T-SQL语句CREATE INDEX。
;现使用对象资源管理器在商品表的“团购价”字段上建立非聚集索引。
;CREATE [UNIQUE] [CLUSTERED|NONCLUSTERED]
INDEX index_name
ON table_name (column_name…)
示例:在商品表的“商品编号”和“标题”字段上建立非聚集索引
CREATE NONCLUSTERED INDEX idx_Product_productID_title
ON Product(productID, title)
;事务是一个由用户所定义的完整的工作单元,一个事务内的所有语句作为一个整体来执行,即或者全部执行,或者全部不执行。
当遇到错误时,可以回滚事务,取消事务内所做的所有改变,从而保证数据库中数据的一致性和可恢复性。
转账交易过程中的转出和转入可设计为一个数据库事务。
;原子性(atomic、atomicity):事务必须是一个原子工作单元。对于其数据修改,或者全都执行,或者全都不执行。
一致性(consi
您可能关注的文档
最近下载
- 2025年全国英语等级考试PETS一级试卷:词汇与语法测试题库.docx VIP
- 2023年广西民族大学219翻译硕士泰语B卷考研真题.pdf VIP
- 汇川INOVANCE MD290系列通用变频器综合手册.PDF VIP
- 2020年广西民族大学219翻译硕士泰语(A卷)考研真题.pdf VIP
- GB-T 2423 2-2001电工电子产品环境试验第2部分:试验方法试验B:高温.docx VIP
- 第二单元《我们的班级》第7课《我是班级值日生》 (教学设计)统编版道德与法治二年级上册.docx VIP
- 实验室安全知识培训-完整版.pptx VIP
- 中华保险公司题目行测.pdf
- 练习十四 课件 人教版六年级数学上册.ppt VIP
- 2018年广西民族大学219翻译硕士泰语考研真题.pdf VIP
文档评论(0)