我们说的视图一般是指计算机数据库中的视图,视图是一个虚拟表,其内容由查询定义。MySQL视图是MySQL数据库中的重要组成部分,能够为用户简化对数据的理解和操作。MySQL视图的优点决定了视图在MySQL数据库中不可撼动的地位。
同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。对其中所引用的基础表来说,视图的作用类似于筛选。定义视图的筛选可以来自当前或其它数据库的一个或多个表,或者其它视图。通过视图进行查询没有任何限制,通过它们进行数据修改时的限制也很少。视图是存储在MySQL数据库中的查询的SQL 语句,下面我们一起来看看MySQL视图的优点:
视图集中即是使用户只关心它感兴趣的某些特定数据和他们所负责的特定任务。这样通过只允许用户看到视图中所定义的数据而不是视图引用表中的数据而提高了数据的安全性。
视图大大简化了用户对数据的操作。因为在定义视图时,若视图本身就是一个复杂查询的结果集,这样在每一次执行相同的查询时,不必重新写这些复杂的查询语句,只要一条简单的查询视图语句即可。可见视图向用户隐藏了表与表之间的复杂的连接操作。
视图能够实现让不同的用户以不同的方式看到不同或相同的数据集。因此,当有许多不同水平的用户共用同一数据库时,这显得极为重要。
在有些情况下,由于表中数据量太大,故在表的设计时常将表进行水平分割或垂直分割,但表的结构的变化却对应用程序产生不良的影响。如果使用视图就可以重新保持原有的结构关系,从而使外模式保持不变,原有的应用程序仍可以通过视图来重载数据。
视图可以作为一种安全机制。通过视图用户只能查看和修改他们所能看到的数据。其它数据库或表既不可见也不可以访问。如果某一用户想要访问视图的结果集,必须授予其访问权限。视图所引用表的访问权限与视图权限的设置互不影响。
视图的安全性可以防止未授权用户查看特定的行或列,使用户只能看到表中特定行的方法如下:
1)在表中增加一个标志用户名的列;
2)建立视图,是用户只能看到标有自己用户名的行;
3)把视图授权给其他用户。
以上就是5条MySQL视图的优点,当然,我们所写的并不是MySQL视图的全部优点,还有一些细节的优点我们没有顾及到,总的来说,以上所提到的5个MySQL视图的优点,决定了视图在数据库中存在的意义。想要学习更多的MySQL数据库的相关知识,可以观看动力节点的MySQL视频教程,名师讲解,带给你全新的学习体验!
代码小兵57603-29 17:54
代码小兵69606-07 17:03
代码小兵22104-13 18:12
代码小兵22104-20 20:22