数据库中视图的基础知识
视图
含义:理解成一张虚拟的表
视图和表的区别:
使用方式 占用物理空间
视图 完全相同 不占用,仅仅保存的是sql逻辑
表 完全相同 占用
视图的好处:
1、sql语句提高重用性,效率高
2、和表实现了分离,提高了安全性
视图的创建
语法:
CREATE VIEW 视图名
AS
查询语句;
视图的增删改查
- 查看视图的数据
SELECT * FROM 视图名;
SELECT * FROM 视图名 WHERE 条件语句; - 插入视图的数据
INSERT INTO 视图名(列名) VALUES('对应的值); - 修改视图的数据
UPDATE 视图名 SET 列名 =值 WHERE 条件语句; - 删除视图的数据
DELETE FROM 视图名;
某些视图不能更新
- 包含以下关键字的sql语句:分组函数、distinct、group by、having、union或者union all常量视图
- Select中包含子查询
- join
- from一个不能更新的视图
- where子句的子查询引用了from子句中的表
视图逻辑的更新
方式一:
CREATE OR REPLACE VIEW 视图名
AS
SELECT 列名 FROM 表名
WHERE 条件语句;
方式二:
ALTER VIEW 视图名
AS
SELECT 列名 FROM 表名;
视图的删除
DROP VIEW 视图名1,视图名2,视图名3;
视图结构的查看
DESC 视图名;
SHOW CREATE VIEW 视图名;