mysql学生成绩视图_MySql学习12---视图

一. 视图介绍

1.1 视图的含义

视图是一个虚拟表,是从数据库中一个或多个表中导出来的表。视图还可以从已经存在的视图的基础上定义。

通俗的讲,视图就是一条SELECT语句执行后返回的结果集。所以我们在创建视图的时候,主要的工作就落在创建这条SQL查询语句上。

1.2 视图的特点

视图一经定义便存储在数据库中,与其相对应的数据并没有像表那样在数据库中再存储一份,通过视图看到的数据只是存放在基本表中的数据。对视图的操作与对表的操作一样,可以对其进行查询、修改和删除。当对通过视图看到的数据进行修改时,相应的基本表的数据也要发生变化;同时,若基本表的数据发生变化,则这种变化也可以自动地反映到视图中。

1.3 视图的作用

方便操作,特别是查询操作,减少复杂的SQL语句,增强可读性;

更加安全,数据库授权命令不能限定到特定行和特定列,但是通过合理创建视图,可以把权限限定到行列级别;

二. 创建视图

视图中包含了SELECT查询的结果,因此视图的创建基于SELECT语句和已存在的数据表。

2.1 如何创建视图

创建视图就是采用  create view 视图名 as  select语句就好。

2.2 在单表上创建视图

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

1 mysql> create table user(id int,name varchar(30));2 Query OK, 0 rows affected (0.05sec)3

4 mysql> insert into user(id,name) values(1,'zhangsan'),(2,'lisi'),(3,'wangwu');5 Query OK, 3 rows affected (0.02sec)6 Records: 3 Duplicates: 0 Warnings: 0

7

8 mysql> select *fromuser;9 +------+----------+

10 | id | name |

11 +------+----------+

12 | 1 | zhangsan |

13 | 2 | lisi |

14 | 3 | wangwu |

15 +------+----------+

16 3 rows in set (0.00sec)17

18 mysql> create view view_user as select name fromuser;19 Query OK, 0 rows affected (0.02sec)20

21 mysql> select *fromview_user;22 +----------+

23 | name |

24 +----------+

25 | zhangsan |

26 | lisi |

27 | wangwu |

28 +----------+

29 3 rows in set (0.00sec)30

31 mysql> create view view_user2(view_name) as select name fromuser;32 Query OK, 0 rows affected (0.02sec)33

34 mysql> select *fromview_user2;35 +-----------+

36 | view_name |

37 +-----------+

38 | zhangsan |

39 | lisi |

40 | wangwu |

41 +-----------+

42 3 rows in set (0.00sec)43

44 mysql>

View Code

说明:在创建视图view_user和view_user2的时候,可以指定视图中应该包含的字段名字。如果不指定,就默认时表格中的字段名字。反正属性是一样的,比如都是varchar(30)

2.3 在多个表上创建视图

比如:有一个student表

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值