数据库视图详解

数据库视图详解,第1张

视图

视图是基于 SQL 语句的结果集的可视化的表。视图包含行和列,就像一个真实的表。视图中的字段就是来自一个或多个数据库中的真实的表中的字段。只保存SQL逻辑,不保存查询结果 。一般用于会在多个地方用到同样的查询结果,或者该查询结果使用的SQL语句较复杂。

创建视图
#方式一:
CREATE VIEW 视图名 AS 查询语句;

#方式二:这个视图没有就创建,有就修改
CREATE OR REPLACE VIEW 视图名
AS
查询语句;

示例一:

-- 创建视图实例1:将学⽣表中性别为男的学⽣⽣成⼀个视图
create view view_test1
AS
select * from students where stu_gender='男';
-- 查询视图
select * from view_test1;

示例二:

-- 创建视图实例1:将学⽣表中性别为男的学⽣⽣成⼀个视图
create view view_test1
AS
select * from students where stu_gender='男';
-- 查询视图
select * from view_test1;
修改视图
#方式一:这个视图没有就创建,有就修改
CREATE OR REPLACE VIEW 视图名
AS
查询语句;

#方式二:
ALTER VIEW 视图名
查询语句; 
删除视图
#可以连续删除多个视图
DROP VIEW 视图名1,视图名...;
查看视图
#查看视图的结构
DESC 视图名;
#查看创建视图的逻辑
SHOW CREATE VIEW 视图名;
视图更新

视图的增删改与表的语法一致;
具有一下任一特点的视图不允许更新:

创建视图的SQL语句中包含一下关键字:分组函数,DISTINEC,GROUP BY,HAVING,UNION ,UNION ALL;创建视图的查询结果是连接查询的结果;FROM后是一个不可更新的视图;常量视图;SELETE语句中包含子查询;WHERE 子句中的子查询引用了FROM后的表; 视图特性:

查询 *** 作:如果在数据表中添加了新的数据,⽽且这个数据满⾜创建视图时查询语句的条
件,通过查询视图也可以查询出新增的数据;当删除原表中满⾜查询条件的数据时,也会从视图中删除。
新增数据:如果在视图中添加数据,数据会被添加到原数据表。
删除数据:如果从视图删除数据,数据也将从原表中删除。
修改 *** 作:如果修改视图数据,也会修改原数据表中的数据。

视图的使⽤建议 : 对复杂查询简化 *** 作,并且不会对数据进⾏修改的情况下可以使⽤视图。

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

原文地址: https://outofmemory.cn/sjk/991678.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存