单页面网站模板怎么做,搜索引擎的设计与实现,湛江企业网站建设流程,宁夏网站建设价格目录
介绍
语法
创建
查询
修改
删除
演示示例 介绍
视图#xff08;View#xff09;是一种虚拟存在的表。视图中的数据并不在数据库中实际存在#xff0c;行和列数据来自定义视图的查询中使用的表#xff08;称为基表#xff09;#xff0c;并且是在使用视图时动…目录
介绍
语法
创建
查询
修改
删除
演示示例 介绍
视图View是一种虚拟存在的表。视图中的数据并不在数据库中实际存在行和列数据来自定义视图的查询中使用的表称为基表并且是在使用视图时动态生成的。
通俗的讲视图只保存了查询的SQL逻辑不保存查询结果。所以我们在创建视图的时候主要的工作就落在创建这条SQL查询语句上。 语法
因为视图是一种虚拟存在的表所以可以根据之前操作表的方法来操作视图其中修改视图与修改表不同修改视图有两种方式。 创建
CREATE [OR REPLACE] VIEW 视图名称[(列名列表)] AS SELECT语句
[ WITH [CASCADED | LOCAL ] CHECK OPTION ] 查询
-- 查看创建视图语句
SHOW CREATE VIEW 视图名称;-- 查看视图数据
SELECT * FROM 视图名称 ...... ; 修改
-- 方式一
CREATE [OR REPLACE] VIEW 视图名称[(列名列表)] AS SELECT语句
[ WITH [ CASCADED | LOCAL ] CHECK OPTION ]-- 方式二
ALTER VIEW 视图名称[(列名列表)] AS SELECT语句
[ WITH [ CASCADED | LOCAL ] CHECK OPTION ] 删除
DROP VIEW [IF EXISTS] 视图名称 ... 演示示例
-- 创建视图
create or replace view stu_v
as
select id,name from student
where
id 10;-- 查询视图
show create view stu_v;select * from stu_v;select * from stu_v where id 3;-- 修改视图
create or replace view stu_v
as
select id,name,no from student
where
id 10;alter view stu_v
as
select id,name from student
where
id 10;-- 删除视图
drop view if exists stu_v; 上述我们演示了视图应该如何创建、查询、修改、删除那么我们能不能通过视图来插入、更新数据呢
接下来做一个测试。
-- 创建视图,设置条件id 10
create or replace view stu_v
as
select id,name from student
where
id 10 ;-- 插入两条数据,一条id 10,另一条id 10
insert into stu_v values(6,Tom);insert into stu_v values(17,Tom22);-- 查询视图
select * from stu_v;
执行上述的SQL我们会发现id为6和17的数据都是可以成功插入的。
但是我们执行查询查询出来的数据却没有id为17的记录。 因为我们在创建视图的时候指定的条件为 id10,
id为17的数据是不符合条件的所以没有查询出来
但是这条数据已经成功的插入到了基表中。 如果我们定义视图时指定了条件然后我们在插入、修改、删除数据时是否可以做到必须满足条件才能操作否则不能够操作呢 答案是可以的这就需要借助于视图的检查选项了。
下一篇就来了解视图的检查选项这一内容。 END 学习自黑马程序员——MySQL数据库课程