mysql学生成绩视图_MySQL学习——操作视图

MySQL学习——操作视图

摘要:本文主要学习了使用DDL语句操作视图的方法。

了解视图

是什么

视图是从一个、多个表或者视图中导出的表,包含一系列带有名称的数据列和若干条数据行。

特点

视图不是数据库中真实的表,而是一张虚拟表,其结构和数据是建立在对数据中真实表的查询基础上的。

视图是查看数据表的一种方法,可以查询数据表中某些列构成的数据,只是一些SQL语句的集合。从安全的角度来看,视图的数据安全性更高,使用视图的用户不接触数据表,不知道表结构。

视图的建立和删除只影响视图本身,不影响对应的基本表。

使用视图

查询视图数据的语句和查询表的语句是一样的。

修改视图数据的语句实际上是通过修改表的数据实现的,对于可修改的视图,视图中的行和基本表的行之间必须具有一对一的关系。

使用注意

视图不包含数据,所以每次使用视图时,都必须执行查询中所需的任何一个检索操作。如果用多个连接和过滤条件创建了复杂的视图或嵌套了视图,可能会发现系统运行性能下降得十分严重。因此,在部署大量视图应用时,应该进行系统测试。

创建视图

语法

1 create view 视图名 (列1, 列2, ..., 列n) as 查询语句;

列名可以任意取名,但数量必须和查询的列名相等,如果不指明视图的列名,默认使用查询语句的列名。

实例

创建一个简单的视图:

1 mysql> create view score_view as select * fromscore;2 Query OK, 0 rows affected (0.01sec)3

4 mysql>

创建视图并指定列:

1 mysql> create view score_view (编号, 学生, 科目, 成绩) as select id, student, course, grade fromscore;2 Query OK, 0 rows affected (0.00sec)3

4 mysql>

查看视图结构

语法

1 desc 视图名;

实例

1 mysql> descscore_view;2 +--------+-------------+------+-----+---------+-------+

3 | Field | Type | Null | Key | Default | Extra |

4 +--------+-------------+------+-----+---------+-------+

5 | 编号 | int(10) | NO | | 0 | |

6 | 学生 | varchar(20) | NO | | NULL | |

7 | 科目 | varchar(20) | NO | | NULL | |

8 | 成绩 | int(10) | YES | | NULL | |

9 +--------+-------------+------+-----+---------+-------+

10 4 rows in set (0.00sec)11

12 mysql>

说明

Field:列名。

Type:类型。

Null:表示该列是否可以存储NULL值。

Key:表示该列是否已编制索引。PRI表示该列是主键的一部分,UNI表示该列是UNIQUE索引的一部分,MUL表示在列中某个给定值允许出现多次。

Default:表示该列是否有默认值,如果有,值是多少。

Extra:表示可以获取的与给定列有关的附加信息,如:AUTO_INCREMENT等。

修改视图

语法

1 alter view 视图名 (列1, 列2, ..., 列n) as 查询语句;

实例

1 mysql> alter view score_view (学生, 课程, 成绩) as select student, course, grade fromscore;2 Query OK, 0 rows affected (0.01sec)3

4 mysql>

删除视图

语法

1 drop view 视图名;

实例

1 mysql> drop viewscore_view;2 Query OK, 0 rows affected (0.00sec)3

4 mysql>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值