前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >视图和索引(数据库学习)

视图和索引(数据库学习)

作者头像
营琪
发布2019-11-04 16:55:10
1K0
发布2019-11-04 16:55:10
举报
文章被收录于专栏:营琪的小记录营琪的小记录

1.理解什么是视图。视图的优点。

引入—数据库的基本表是按照数据库设计人员的观点设计的,并不一定符合所有用户的需求。

SQL Server 可以根据用户需求重新定义表的数据结构,这种数据结构就是视图(用户外模式)

视图:是从一个或几个基本表(模式)导出来的表,是一个虚表,并不表示任何物理数据。

(数据库只储存视图的定义,不储存视图对应的数据,及也可通过视图修改基本表中数据)

视图优点:

-|:为用户集中数据,简化用户的数据查询和处理。

-|:保证数据的逻辑独立性。

-|:重新定制数据,使数据便于共享;合并分割数据,有利于数据输出到应用程序中。

-|:数据保密。

2.视图的创建、修改、使用、删除

看实验报告

创建原则:当前数据库、必须遵循标示符规则、可在其他视图之上建立视图、如果视图中某列为(算术表达式、内置函数或常量派生而来,用户需要为其指定特点的名称)

使用(insert、update、delete)视图修改基本表中数据,需满足可更新条件:

-|:只引用一个基本表的列。视图依赖多表时,不能通过视图插入删除数据、只能修改一个表数据。

-|:视图中被修改的列必须直接引用表列中的基础数据(非聚合函数、计算、集合运算)

-|:被修改的列不应是创建视图时受group by、having、distinct、top语句影响的。

创建(create view 视图名称 as 查询语句)

修改(alter view 视图名称 as 查询语句)

使用(select *from 视图名称),同数据库查询类似

删除(drop view 视图名称)

3.什么是索引。索引的分类。创建索引时应考虑哪些问题?

索引(index):是对数据库表中一个或多个列的值进行排序的结构 ,其主要目的是提高SQL Server 系统的性能,加快查询数据的速度。(通过记录表中的关键值指向基本表中的记录)

根据组织方式分为:(最多存在250个)

-|:聚集索引,会对表中数据进行物理排序。(只能有一个,当定义主键约束时,会自动用主建列作为聚合索引建)

-|:非聚集索引,不会对表中数据进行物理排序。(目录纯粹是目录,正文纯粹是正文)

创建索引时应考虑的问题

-|:对一个表中建大量的索引,应经行权衡。(经常更新少索引,更新少的数据量大的多索引)。

-|:对小型表进行索引可能不会产生优化效果。

-|:对于主键和外键列应考虑建索引。(主键查询、外键连接)

-|:很少在查询中使用的列及值很少的列不应考虑建索引。

-|:视图中如果包含聚合函数或连接时,创建视图的索引可以显著提高查询性能。

4.如何创建索引、查看索引信息、删除索引

创建(create index 索引名 on 基本表(列名))

-|:间接创建(定义表结构或修改表结构时,定义了主键约束(pramary key)自动生成聚集索引、唯一性约束(unique)非聚集唯一索引。

-|:创建索引视图

查看索引(exec 存储过程(sp_helpindex或者sp_help) 基本表)

删除索引(drop index 基本表.索引名)

-|:必须删除表约束(primary key、unique),才能删除约束。(根据约束自动生成的索引)

-|:删除表时,自动删除此表上的索引。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-06-24 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 2.视图的创建、修改、使用、删除
  • 3.什么是索引。索引的分类。创建索引时应考虑哪些问题?
  • 4.如何创建索引、查看索引信息、删除索引
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档