mysql(创建单/多表/查询/修改/删除)视图(含实战练习)

本博文源于mysql基础,旨在对视图进行学习与练习。涉及创建单表/多表视图,查询视图,修改视图,修改视图内容,删除视图.
在学习章节之前,需要先创建两张表,然后再插入记录。

 create table tb_students_info
    (id INT(11) PRIMARY KEY,
    name VARCHAR(10),dept_id INT(11),
   age INT(11),sex VARCHAR(4),height FLOAT,login_date DATE);

然后插入记录

 insert into tb_students_info values(1,'Dany',1,25,'F',160,'2015-09-10'); 
insert into tb_students_info values(2,'Green',3,23,'F',158,'2016-10-22');
insert into tb_students_info values(3,'Henry',2,23,'M',159,'2016-10-23');
 insert into tb_students_info values(4,'Jane',1,22,'F',156,'2016-10-12');
 insert into tb_students_info values(5,'Jim',1,24,'M',158,'2016-10-22');
 insert into tb_students_info values(6,'John',2,21,'M',152,'2016-10-24');
 insert into tb_students_info values(7,'Lily',6,22,'F',160,'2016-10-25');
 insert into tb_students_info values(8,'Susan',4,23,'F',166,'2016-10-26');
 insert into tb_students_info values(9,'Green',3,22,'M',170,'2016-10-27');
 insert into tb_students_info values(10,'Green',4,23,'M',193,'2016-10-23');

我们还需要一个tb_departments

 create table tb_departments (dept_id int(11) primary key,dept_name varchar
(11),dept_call int(11),dept_type varchar(2)); 
insert into tb_departments values(1,'Computer',11111,'A'); 
insert into tb_departments values(2,'Math',22222,'A');
 insert into tb_departments values(3,'Chinese',33333,'B');
 insert into tb_departments values(4,'Economy',44444,'B');
 insert into tb_departments values(5,'History',55555,'B');

有了它们,我们可以往下做练习

认识视图

视图是一个虚拟表,其内容由查询定义。同真实表一样,视图包含一系列带有名称的列和行数据,但视图并不是数据库真实存储的数据表。

创建视图

基本语法

CREATE VIEW <视图名> AS <SELECT 语句>

创建基于单表的视图

例子:在tb_students_info表上创建一个名为view_students_info的视图

 create view view_students_info as select * from tb_students_info;

在这里插入图片描述

创建基于多表的视图

例子:在表tb_students_info和表tb_departments上创建视图vi_students_info

create view vi_students_info (s_id,s_name,d_id,s_age,s_sex,s_height,s_date) as
 SELECT id,name,dept_id,age,sex,height,login_date from tb_students_info;

查询视图

格式DESCRIBE 视图名

例子:通过describe语句查看vi_students_info的定义

describe vi_students_info;

在这里插入图片描述

修改视图

可以使用ALTER VIEW语句来对已有的视图进行修改。

基本语法

VIEW <视图名> AS <SELECT 语句>

修改视图内容

不能修改视图的地方有很多,但大家只需要记住UPDATE、DELETE、INSERT能修改视图。

例子:使用ALTER语句修改视图vi_students_info

 ALTER VIEW vi_students_info as select id,name,age from tb_students_info;

在这里插入图片描述

例子:将vi_students_info 中的id为5改为年龄28

 update vi_students_info set age=28 where id=5;

在这里插入图片描述

例子:删除vi_students_info中的id为5的记录

 delete from vi_students_info where id=5;

在这里插入图片描述

删除视图

基本语法

DROP VIEW <视图名1> [,<视图名2>...]

删除视图

例子:删除vi_students_info视图

 drop view vi_students_info;

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/m0_37149062/article/details/106807873