1.什么是视图?
① 视图是一种虚拟的表,是从数据库中一个或多个表中导出来的表。
② 数据库中存放了视图的定义,而并没有存放视图中的数据,这些数据存放在原来的表中。
③ 使用视图查询数据时,数据库系统会从原来的表中取出对应的数据。
视图create view只是保存了sql逻辑增删改查,只是一般不能增删改
2.视图的作用
预查询
SQL语句简单明了
业务的统一处理
①使操作简便化。
②增加数据的安全性。
③ 提高表的逻辑独立性。
3.基本语法
创建视图
CREATE VIEW 视图名 AS SELECT 语句;
使用视图
select * from 视图名 where 查询条件;
4.视图的修改
①create or replace view 视图名
as
查询语句;
②alter view 视图名 as 查询语句;
1.插入
INSERT INTO 视图名 VALUES('x','x');
INSERT INTO v_mwy VALUES('1','book');
2.修改
UPDATE 视图名 SET 列名name= 'x ' WHERE 列名name='x';
UPDATE v_book SET name= 'hz' WHERE name='cnjs';
3.删除
DELETE FROM 视图名 WHERE 列名name= 'x';
DELETE FROM v_book WHERE name= 'cnjs'
修改视图的原因:
当表结构新增了列的时候,以及当目前视图不满足开发要求,需要多连接一张或多张表
注意:
创建视图时的联表语句,查询值不能出现重复列,否则创建不成功
5.删除视图
drop view 视图名;
6.查看视图
desc 视图名
show create view 视图名
7.更新
具备以下特点的视图不允许更新:
①包含以下关键字的sql语句:分组函数、distinct、group by、having、union或者union all
②常量视图
③Select中包含子查询
④join
⑤from一个不能更新的视图
⑥where子句的子查询引用了from子句中的表