暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
Mysql进阶三板斧(一)带你彻底搞懂View视图的原理及应用
610
8页
10次
2020-04-09
免费下载
视图的起源
MySQL5.0.1
(开天辟地一版本)中增加的三大新功能之一,另外两个师兄弟是存储过
与触发器。均属于相对“高级”一点的数据库必需功能。
视图是一种虚拟存在的表,行和列的数据来自定义视图的查询中使用的表,并且是在使
视图时动态生成的,只保存了
sql
逻辑,不保存查询结果
MySQL
定义什么所有可定,同时也
新视图(当然只有在视图和行列与基础表的行列之间存在一一对应关系时才能更新),
此从功能上说
MySQL
的视图功能已经很完善了。
一、视图概述
视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的
和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由
义视图的查询所引用的表,并且在引用视图时动态生成。
对其中所引用的基础表来说,视图的作用类似于筛选。定义视图的筛选可以来自当前或
它数据库的一个或多个表,或者其它视图。通过视图进行查询没有任何限制,通过它们
行数据修改时的限制也很少。
视图是存储在数据库中的查询的
SQL
语句,视图有两个特点:
1.
安全。视图可以隐藏一些数据。如:个税表,可以用视图只显示姓名,地址,而不显示
个税号和工资数等,
2.
可使复杂的查询易于理解和使用。这个视图就像一个窗口,从中只能看到你想看的数据
列。意味你可在这视图使用
SELECT *
,而看到将是在视定义给出
的那些数据列。
二、视图的意义
既然视图的定义是基于基本表的,哪为什么还要定义视图呢?这是因为合理地使用视图
够带来许多好处:
1
、 视图能简化用户操作
视图机制使用户可以将注意力集中在所关心地数据上。如果这些数据不是直接来自基
本表,则可以通过定义视图,使数据库看起来结构简单、清晰,并且可以简化用户的的
据查询操作。例如,那些定义了若干张表连接的视图,就将表与表之间的连接操作对用
隐藏起来了。换句话说,用户所作的只是对一个虚表的简单查询,而这个虚表是怎样得
的,用户无需了解。
2
、 视图使用户能以多种角度看待同一数据
视图机制能使不同的用户以不同的方式看待同一数据,当许多不同种类的用户共享同
一个数据库时,这种灵活性是非常必要的。
Student
15
15
视图只包含一个系的生数据,并只系的任查询和修改本生视图。
是这样
:
创建个视图,定义图所操作的数据。之用户限与视
。这样的方式是使用到了一个特性:
grant
语句可以视图进行授予给不同的
用户使用。
3
、 视图对构数据库提供了一定程度的逻辑独立
据的性是户的用程依赖数据构。据的独立
性是数据,如增加新的关系或对的关系增加新,用户的应用
会受影响数据库和网状数据库一地支持数据的,而对于
独立性则不能完全的支持。
在关数据库中,数据库造往不可避免的。数据是将一个
Student
ID
Sname
sex
age
class
),
SX
SID
Sname
age
SY
SID
sex
class
Student
SX
表和
SY
表自然连接的结果。如果建立一个视图
Student
CREATE VIEW Student
SID
Sname
sex
age
class
AS SELECT
SX.ID
SX.Sname
SY.sex
SX.age
SY.class FROM Student1 SX
Student2 SY WHERE SX.SID=SY.SID
数据的逻结构
SX
SY
两个了)但应修改
因为视图定义为用的关系,使用户的式保持不用户的应用程
过视图然能够查数据。
当然,视图只能在一定程度提供数据的逻由于视图的更新是条件的,
此应用程中修改数据的语句可能仍会因为基本表构的改而改
4
、安全性
有了视图机制,就可以在设计数据库应用系时,对不同的用户定义不同的视图,使
数据不出不应看到这些数据的用户视图上。这样视图机制就自动对机
数据的安全保功能。
6.
灵活性
复杂的查询。可以进行题分,然多个视图数据。将视
来就能得到需要的结果了。
的工机制图的图中
sql
,进操作
图的内容没有存储,而是在视图引用的时出数据。这样间,由于
of 8
免费下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜