视图和表的区别 ?

简单的说,视图是按照你的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 才能把这个视图中的东西更改掉

视图并非实体表,不占存储空间,它只是在现有表上做一次投射,按一定的关系组织数据,本身不存储数据,,就像看电视,电视里的人物并不存在电视里

视图适合于多表连接浏览时使用!不适合增、删、改.,存储过程适合于使用较频繁的SQL语句,这样可以提高  执行效率!

从安全的角度说,视图可以不给用户接触数据表,从而不知道表结构。

视图是虚拟的内存表,你可以理解成Windows的快捷方式!?

现在不是很确定的是,,视图就是在内存中建立的吗? 那岂不是 一直占用着内存??? 如果视图所在的表是1个很大的表,那就是要一直占用一块很大的内存了???

如果视图占用着内存,是不是它的select速度应该是非常快才对的呢????

时间: 2024-08-07 00:16:16

视图和表的区别 ?的相关文章

视图和表的区别和联系

数据库中的数据都是存储在表中的,而视图只是一个或多个表依照某个条件组合而成的结果集,一般来说你可以用update,insert,delete等sql语句修改表中的数据,而对视图只能进行select操作.但是也存在可更新的视图,对于这类视图的update,insert和delete等操作最终会作用于与其相关的表中数据.因此,表是数据库中数据存储的基础,而视图只是为了满足某种查询要求而建立的一个对象. 表是物理存在的,你可以理解成计算机中的文件!视图是虚拟的内存表,你可以理解成Windows的快捷方

mysql 中视图和表的区别以及联系是什么?

一.两者的区别 1)本质 表是内容,视图是窗口.视图是已经编译好的sql语句,是基于sql语句的结果集的可视化的表,而表不是. 2)实与虚 表属于全局模式中的表,是实表:视图属于局部模式的表,是虚表. 3)是否存在物理记录 视图没有,而表有. 4)是否占用物理空间 表占用物理空间,而视图不占用.视图只是逻辑概念的存在,表可以及时对它进行修改,但视图只能用创建的语句来修改. 5)是否影响 视图的建立(create)和删除(drop)只影响视图本身,不影响对应的基本表. 6)安全因素 视图是查看数据

试图和基本的表的区别和联系

视图:在SQL中,视图是外模式一级数据结构的基本单位.它是从一个或几个基本表中导出的 表,是从现有基本表中抽取若干子集组成用户的“专用表”. 基本表:基本表的定义指建立基本关系模式,而变更则是指对数据库中已存在的基本表进行删除与修改. 区别: 1.视图是已经编译好的sql语句.而表不是 2.视图没有实际的物理记录.而表有. 3.表是内容,视图是窗口 4.表只用物理空间而视图不占用物理空间,视图只是逻辑概念的存在,表可以及时对它进行修改,但视图只能有创建的语句来修改 5.表是内模式,试图是外模式

Oracle 中的一些重要V$ 动态性能视图,系统视图和表

v$database:数据库的信息,如数据库名,创建时间等. v$instance 实例信息,如实例名,启动时间. v$parameter 参数信息,select * from v$parameter where name like '%name'  ----> show parameter name(sqlplus中执行) v$process 运行的进程的信息,如PID,SPID,以及进程的名字,如SMON,PMON在UNIX的进程名称,在windows中会看到类似ORACLE.EXE (PM

hive表与外部表的区别

相信很多用户都用过关系型数据库,我们可以在关系型数据库里面创建表(create table),这里要讨论的表和关系型数据库中的表在概念上很类似.我们可以用下面的语句在Hive里面创建一个表: hive> create table wyp(id int, > name string, > age int, > tele string) > ROW FORMAT DELIMITED > FIELDS TERMINATED BY '\t' > STORED AS TEX

5-03使用视图创建表

视图创建表的过程: 找到你操作的数据库,点开数据库,右击表,点新建表. 出现这个窗口的时候,就可以打上列名和数据类型. 按键盘的ctrl+s就可以进行保存,打上表名就行了

蛋疼的郁闷——聚集索引扫描、非聚集索引扫描、表扫描区别

聚集索引扫描,首先我们知道数据它是以索引键为叶节点排列起来的树形数据结构,表中每行的数据都附属在索引键中,对这样的表进行数据查找时,最快的方式当然是“聚集索引查找”.什么情况下才是“聚集索引扫描”呢?是当你要查找的数据的条件字段上没有索引时,此时查询执行器将对整个表中的数据挨个的进行读取确认符合查询条件的数据,但当该表上有字段设有聚集索引时,该扫描过程称之为“聚集索引扫描",相反的情况是当该表上没有一个字段设有”聚集索引“时,该扫描过程称之为”表扫描“.其实他们本质上的过程都是一样的,就是挨个的

在javascript中关于submit和button提交表单区别

原文:在javascript中关于submit和button提交表单区别 原文来自:http://www.jb51.net/article/42236.htm submit是button的一个特例,也是button的一种,它把提交这个动作自动集成了,submit和button,二者都以按钮的形式展现,看起来都是按钮,所不同的是type属性和处发响应的事件上. 1. 如果表单在点击提交按钮后需要用JS进行处理(包括输入验证)后再提交的话,通常都必须把submit改成button,即取消其自动提交的

蛋疼的郁闷-聚集索引扫描、非聚集索引扫描、表扫描区别

本文适用于对数据库索引有一定深入的攻城师阅读参考. 我们对于聚集索引扫描和表扫描比较容易理解的,但是对于非聚集索引扫描不太容易理解,这一点也往往容易使初学者感到很是困惑,原因是总认为没必要存在非聚集索引扫描,因为如果查询结果不具有高选择性的话,在聚集索引表中可以使用聚集索引扫描,在对表中会使用表扫描的,那么为什么要会存在非聚集索引扫描呢? 之所以有这样的问题,是因为我们没有考虑到一种情况,那就是查询结果如果被建有非聚集索引的字段覆盖或包含了,而此时where条件字段上的非聚集索引对于本次查询结果