MySQL中视图和表的区别及联系

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/IO_Field/article/details/81121903

两者的区别

  1. 视图是已经编译好的SQL语句,是基于SQL语句的结果集的可视化表,而表不是。
  2. 视图没有实际的物理记录,而表有。
  3. 表示是内容,视图是窗口。
  4. 表占用物理空间,而视图不占用物理空间,只是逻辑概念的存在。表可以及时修改,但视图只用创建的语句来修改。
  5. 视图是查看数据表的一种方法,可以查询数据表中某些子字段来构成的数据,只是一些SQL语句的集合。从安全的角度来说,视图可以防止用户接触数据表,因而用户不知道表结构。
  6. 表属于全局模式中的表,是实表;视图属于局部模式的表,是虚表。
  7. 视图的建立和删除只影响视图本身,不影响对应的基本表。

两者的联系

视图是在基本表之上建立的表,它的结构(所定义的列)和内容(所有的记录)都来自基本表,依据基本表存在而存在。一个视图既可以对应一个基本表,也可以对应多个基本表。视图是基本表的抽象和在逻辑意义上建立的新关系。

猜你喜欢

转载自blog.csdn.net/IO_Field/article/details/81121903