文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

【mysql】视图的创建、修改、删除、查看所有视图、不能修改视图的情况

2023-09-21 12:14

关注
1.视图

视图类似于表,但不是真实存在的表,而是根据已存在的表创建出来的虚拟表,即它并不会被保存在物理磁盘上。视图的使用场景很多,比如说,你需要给某个用户提供某张表的访问权限,但又不能把所有字段都给他看,这时候我们可以创建一个视图,选取那张表或多张表的某些字段创建一个视图,然后把查看视图的权限开放给他即可达到保护数据安全的作用。

2.创建视图
2.1 查看权限

想要操作视图,得先看一下当前用户有没有相关的权限,比如说创建视图权限、查看视图权限、选择权限、删除权限等,这些信息可以在mysql.user找到

select `user`,Select_priv,Create_view_priv,Show_view_priv from mysql.user;
2.2 创建视图

确定自己又创建视图的权限之后,可以使用下面的语句创建视图,注意视图类似于表,所以视图名必须是唯一存在的,不能与已有的表名或视图名重复

create view 视图名 as 选择语句;

select语句就是我们平时查询表数据的语句,可以从单个表查询,也可以使用join从多个表查询

如果该视图已经存在,你可以使用 or replace 语句覆盖已存在的视图

create or replace view 视图名 as Select语句;
3.查看视图
3.1 查看视图

创建出来的视图类似于表,所以你听可以通过show tables查看所有表和视图

show tables;

但show tables查询出来的你也不知道哪个是视图哪个是表,如果你想只看视图而不看表,下面两个语句都能过滤出所有视图

show table status where comment='view';select * from information_schema.views;

如果你想看视图的字段结构,与查看表的字段是一样的,可以使用describe或者简写desc

describe 视图名;desc 视图名;
3.2 查看创建视图语句

如果想查看一个视图是如何创建出来的,可以使用show命令,但是前提是当前用户有

show create table 视图名;show create view 视图名;
4.修改视图

视图是根据基本表创建的,如果基本表的列结构发生变化,比如说基本表的某个列名发生了改变,则视图会报错提示查不到该列,所以需要重新。

更新视图其实就是重新选择一次原表数据,不过这次不是重新创建视图而是修改视图,所以使用alter view命令

alter view 视图名 as Select语句;

视图不能直接重命名,你可以选择删掉重建,或者直接使用create or replace view命令

还要注意,alter view命名要求用户除了就有select权限,还要具有create view和drop权限

5.删除视图

删除视图与删除表差不多,使用drop view命令

drop view 视图名;

要注意,删除视图只能删除视图的定义,不会删除数据,因为数据存储在基本表里

6.视图的增删改查

视图类似一张表,所以对视图的增删改查操作的语句与对表的增删改查的语句是一样的,这里就不一样列举了。要注意,因为视图并不真实存在,所以对视图的操作基本上就是对基本表的操作,比如说增加、删除、修改视图的数据,其实就是增删改基本表的数据。

但我要提醒的是,并不是所有视图都是可以修改更新的,如果视图包含以下结构中的任何一种,它就是不可更新的,比如说下面几种情况(可能还有其他其他情况)

来源地址:https://blog.csdn.net/qq_39147299/article/details/127487692

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯