sql中视图与表的区别?

sql中视图与表的区别?,第1张

sql中视图与表的区别为:性质不同、存储内容不同、 *** 作不同。

一、性质不同

1、视图:视图不是一个独立的文件,是由一个或几个基本表导出形成的虚表。

2、表:表是数据库中用来存储数据的对象,是有结构的数据的集合,是整个数据库系统的基础。

二、存储内容不同

1、视图:视图存储的内容是来自本地数据源或远程数据源的定义,不存放实际数据。

2、表:表存储的内容是本地数据源的数据。

三、 *** 作不同

1、视图: *** 作者只可以对视图进行查 *** 作,不能进行增删改 *** 作。

2、表: *** 作者可以对表进行增删改查四种 *** 作。

简单的说,视图是按照你的sql语句生成的一个虚拟的东西,本身并不占数据库空间

譬如有这个表

create

table

table_a

(id

int,name

varchar(10))

然后有这么一个视图

create

view

view_a

as

select

id

from

table_a

当你表里的数据增加或者删除的时候,你视图里的内容也随着变化

总之你不能对视图进行update或者insert

into *** 作

说白了,就是视图的变化随着表的变化而变化

除非重新create

or

replace

view_a

才能把这个视图中的东西更改掉

整理了下他们的区别和联系,或许还不是那么详细和完整,希望能对你有点帮助!

区别:1、视图是已经编译好的sql语句。而表不是

2、视图没有实际的物理记录。而表有。

3、表是内容,视图是窗口

4、表只用物理空间而视图不占用物理空间,视图只是逻辑概念的存在,表可以及时四对它进行修改,但视图只能有创建的语句来修改

5、表是内模式,试图是外模式

6、视图是查看数据表的一种方法,可以查询数据表中某些字段构成的数据,只是一些sql语句的集合。从安全的角度说,视图可以不给用户接触数据表,从而不知道表结构。

7、表属于全局模式中的表,是实表;视图属于局部模式的表,是虚表。

8、视图的建立和删除只影响视图本身,不影响对应的基本表。

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


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9450822.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存