网站大量收购闲置独家精品文档,联系QQ:2885784924

MySQL数据库 4.1 视图的开发教案 .docx

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

PAGE9

教案首页

课程名称

MySQL数据库开发

本节课题

任务4.1视图的开发

授课方式

理实一体化

教学参考及教具

姜云桥主编.MySQL数据库开发.临科院:教务处,2023

计算机MySQL数据库软件多媒体教学系统资料包

教学目标及基本要求

理解视图

了解视图特性

掌握视图的创建,查询、修改和删除视图的方法

培养自主学习能力

教学重点

教学难点

创建视图、查询、修改和删除视图、通过视图操作数据

通过视图操作数据

教学小结

作业及要求

按照任务书做好预习任务

创建视图、查询、修改和删除视图

教后反思

注意:用微课视频每个典型操作做示范

教案用纸

教学内容、方法和过程

附记

任务4.1视图的开发

【任务背景】

出于安全的原因,有时要隐藏一些重要的数据信息。例如,社会保险基金表包含着客户的很多重要信息,如果只显示姓名、地址等基本信息,而不显示社会保险号和工资数等重要信息。

这时,可以创建一个视图,在原有的表(或者视图)的基础上重新定义一张虚拟表,选取基本的或对用户有用的信息,屏蔽掉那些对用户没有用,或者用户没有权限了解的信息,保证数据的安全。

再如,我们在使用查询时,很多时候要使用聚合函数,可能还要关联好几张表,查询语句会显得比较复杂,而且经常要使用这样的查询。

遇到这种情况,数据库设计人员可以预先通过视图创建好查询。一方面,屏蔽了复杂的数据关系,另一方面,用户只需从建好的视图进行查询,就可以轻松得到想要的信息,使用户操作简单化。

【任务要求】

本任务将从认识视图着手,学习视图的创建、查询、修改和删除方法,并学会通过视图对数据进行查询和统计,通过视图向基表进行数据更新的操作。

【任务必备知识】

4.1.1认识视图

从用户角度来看,视图是从一个特定的角度来查看数据库中的数据。从数据库系统内部来看,视图是由SELECT语句查询定义的虚拟表。

从数据库系统外部来看,视图就如同一张表,对表能够进行的一般操作都可以应用于视图,例如查询、插入、修改和删除操作等。

视图是一个虚拟表,定义视图所引用的表称为基本表。视图的作用类似于筛选,定义视图的筛选可以来自当前或其他数据库的一个或多个表,或者其他视图。

视图一经定义便存储在数据库中,与其相对应的数据并没有像表那样又在数据库中再存储一份,通过视图看到的数据只是存放在基本表中的数据。

当对通过视图看到的数据进行修改时,相应的基本表的数据也要发生变化。同时,若基本表的数据发生变化,则这种变化也可以自动地反映到视图中。

视图的特性:

(1)简单性。

(2)安全性。

(3)逻辑数据独立性。

4.1.2创建视图

语法格式如下。

CREATE[ORREPLACE]

VIEWview_name[(column_list)]

ASselect_statement

说明

(1)view_name为视图名。视图属于数据库。在默认情况下,将在当前数据库中创建视图。如果要在其他给定数据库中创建视图,应将名称指定为db_name.view_name。

(2)CREATEVIEW语句能创建新的视图,如果给定了ORREPLACE子句,该语句还能替换已有的视图。

(3)select_statement是用来创建视图的SELECT语句,它给出了视图的定义。该语句可从基本表(一个或两个以上的表)或其他视图进行选择。

(4)默认情况下,由SELECT语句检索的列名将用作视图列名。如果想为视图列定义另外的名称,可使用可选的column_list子句,列出由逗号隔开的列名称即可。但要注意,column_list中的名称数目必须等于SELECT语句检索的列数。

(5)视图是虚表,只存储对表的定义,不存储数据。

【注意】

视图定义服从下述限制。

(1)要求具有针对视图的CREATEVIEW权限,以及针对由SELECT语句选择的每一列上的某些权限。

对于在SELECT语句中其他地方使用的列,必须具有SELECT权限。如果还有ORREPLACE子句,必须在视图上具有DROP权限。

(2)在视图定义中命名的表必须已存在,视图必须具有唯一的列名,不得有重复,就像基本表那样。

(3)视图名不能与表同名。

(4)在视图的FROM子句中不能使用子查询。

(5)在视图的SELECT语句不能引用系统或用户变量。

(6)在视图的SELECT语句不能引用预处理语句参数。

(7)在视图定义中允许使用ORDERBY,但是,如果从特定视图进行了选择,而该视图使用了具有自己ORDERBY的语句,它将被忽略。

(8)在定义中引用的表或视图必须存在。但是,创建了视图后,能够舍弃定义引用的表或视图。要想检查视图定义是否存在这类问题,可使用CHECKTABL

文档评论(0)

balala11 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档