1. 从5.0.1起提供视图
视图的列来自不同的表,是表的抽象和在逻辑意义上建立的新关系
视图的建立和删除不影响基本表
对视图内容的添加、删除、修改影响基本表
视图来自多个基本表时,不允许添加和删除数据
物理上不存在
实现了信息的隐藏
2. 创建视图VIEW
(1)视图名不能和表名、其他视图名重名
create view view_name AS 查询语句;
①未创建视图前查询表中数据
②创建视图后
连show tables都发生了变化:
3. 查看视图
(1)查看视图详细信息
show table status from db_name like "表名或者视图名" \G //from db_name、like “” 可以省略
(2)查看定义信息:show create view_name \G
查看设计信息: desc view_name;
(3)通过系统表查看视图信息
mysql安装成功后会自动创建系统数据库 information_schema ,此库中有含视图信息的表格 views
use information_schema;
select * from views where table_name='view_selectproduct' \G
4. 删除视图
(1)drop view view_name1,view_name2.....
5. 修改视图
(1)create or replace view view_name as 查询语句
这样就修改了原来的视图
(2)alter view view_name as 查询语句
6. 利用视图操作基本表
(1)检索(查询)数据
select * from view_name;
(2)利用视图操作基本表数据
①添加数据
insert into view_name (属性名1,属性名2,....) values (值1,值2....); //列名(字段名、属性名)可以不写,但值需要一一对应
②删除数据
delete from view_name where 字段名='某个值';
③更新数据
update view_name set 字段1=修改后的值 where 字段2=‘’;