修改视图 是指修改数据库中,存在的视图的定义 比如,当基本表中的某些字段发生变化时,可以通过修改使徒的方式,来保持视图与基本表的一致性 MysqL中,修改视图的方式有两种
<h3 id="create-or-replace-view语句">CREATE OR REPLACE VIEW语句
使用CREATE OR REPLACE VIEW语句,修改视图 语法格式 CREATE [OR REPLACE] [ALGORITHM={UNDEFINED | MERGE | TEMPTABLE}] VIEW view_name [(column_list)] AS SELECT_statement [WITH [CASCADED | LOCAL] CHECK OPTION]]
参数说明 使用CREATE OR REPLACE VIEW语句修改视图时,如果,修改的视图存在,name将使用修改语句修改视图,如果不存在,那么将会创建一个视图
使用CREATE OR REPLACE VIEW语句修改view_stu视图 CREATE OR REPLACE VIEW view_stu AS SELECT * FROM student;
参数说明 View_stu,表示要修改的视图的名称 *号,通配符,表示表中所有字段 student,指基本表的表名
首先,通过DESC语句,查看修改之前的view_stu视图,student表的字段信息 View_stu视图,查询结果
图片描述" title="">
student视图,查询结果
图片描述" title="">
修改view_stu视图
图片描述" title="">
图片描述" title="">
可以看出,修改之后,view_stu视图的字段信息,和student表中的字段信息完全相同
<h3 id="alter语句">ALTER语句
使用ALTER语句,修改视图 ALTER语句,是MysqL提供的另一种修改视图的方法 语法格式 ALTER [ALGORITHM={UNDEFINED | MERGE | TEMPTABLE}] VIEW view_name [(column_list)] AS SELECT_statement [WITH [CASCADED | LOCAL] CHECK OPTION] 使用ALTER语句,修改view_stu视图 ALTER VIEW view_stu AS SELECT chinese FROM student;
参数说明 View_stu,表示要修改的视图名称 Chinese,表示student表中的chinese字段 student,为基本表的表名
修改view_stu视图
40422.jpg" alt="这里写图片描述" title="">
图片描述" title="">
可以看出,view_stu视图修改后,只剩一个chinese字段