加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL7:视图

发布时间:2020-12-12 00:03:45 所属栏目:MySql教程 来源:网络整理
导读:什么是视图 数据库中的视图是一个虚拟表 。视图是从一个或者多个表中导出的表,视图的行为与表非常相似,在视图中用户可以使用SELECT语句查询数据,以及使用INSERT、UPDATE和DELETE修改记录。视图可以使用户操作方便,而且可以保障数据库系统安全。 ( span s

什么是视图

数据库中的视图是一个虚拟表。视图是从一个或者多个表中导出的表,视图的行为与表非常相似,在视图中用户可以使用SELECT语句查询数据,以及使用INSERT、UPDATE和DELETE修改记录。视图可以使用户操作方便,而且可以保障数据库系统安全。

(<span style="color: #0000ff;">CREATE <span style="color: #0000ff;">TABLE<span style="color: #000000;"> teacherinfo
(
teacherId
<span style="color: #0000ff;">INT
<span style="color: #000000;">,teacherAddr
<span style="color: #0000ff;">VARCHAR
(<span style="color: #800000; font-weight: bold;">40
<span style="color: #000000;">),teacherPhone <span style="color: #0000ff;">VARCHAR(<span style="color: #800000; font-weight: bold;">20<span style="color: #000000;">)
);

创建视图

view_name ]

解释一下:

1、CREATE表示创建新视图。REPLACE表示替换已经创建的视图

2、ALGORITHM表示视图选择的算法,UNDEFINED表示MySQL自动选择算法,MERGE表示将使用的视图语句与视图定义合并起来,TEMPTABLE表示将视图的结果存入临时表,然后用临时表来执行语句

3、view表示视图的名称

4、column_list为属性列

5、SELECT_statement表示SELECT语句

6、CASCADED与LOCAL为可选参数,CASCADED为默认值,表示更新视图时要满足所有相关视图和表的条件;LOCAL则表示更新视图时满足该视图本身定义即可

该语句要求具有针对视图的CREATE VIEW权限,以及针对由SELECT语句选择的每一列上的某些权限。对于在SELECT语句中其他地方使用的列,必须具有SELECT权限,如果还有OR REPLACE子句,必须在仕途上具有DROP权限。另外,视图属于数据库,在默认情况下,将在当前数据库创建新的视图,如果想在给定数据库中明确创建视图,创建时应将名称指定为db_name.view_name。

1、在单表上创建视图

teacherId,teacherPhone teacherinfo;

view_teacherinfo (,

说明视图中的字段发生变化,原表中的字段也发生了变化,证明了前面的结论,反之也是。

2、在多表上创建视图

teacher,teacherinfo teacher.teacherId teacherinfo.teacherId;

使用视图的作用

查看、修改、删除视图

结果为:

SHOW TABLE STATUS也可以用来查看视图信息,基本语法为:

SHOW STATUS

SHOW STATUS

SHOW

比如:

SHOW

修改视图的语法和创建视图的语法是完全一样的。当视图已经存在时,修改语句可以对视图进行修改;当视图不存在时,创建视图

MySQL中视图和表的区别

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读