当前位置: 首页 > ds >正文

MySQL基础关键_011_视图

目  录

一、说明

二、操作

1.创建视图

2.创建可替换视图

3.修改视图

4.删除视图

5.对视图内容的增、删、改

(1)增

(2)改

(3)删


一、说明

  1. 只能将 DQL 语句创建为视图
  2. 作用:
    1. 可以降低开发、维护成本。例如:有一条很复杂的 SQL 语句在多处使用;
    2. 视图可以隐藏表的字段名。
  3. 对视图的增、删、改会影响原表数据

二、操作

1.创建视图

        创建一张 users 表,随机插入几条数据,并添加查询全部信息的视图。

        再查询该视图的全部信息和 id 是 2 的人员信息。

drop table if exists users;create table users(id int primary key auto_increment,name varchar(10),email varchar(255) unique
);insert into users(name, email) values('张爱菊', '13795812231@wx.com'),('何继超', '19834215667@wx.com'),('陆明', '17329335210@wx.com');-- 创建查询所有信息的视图
create view users_selectall_view as select * from users;-- 查询视图 users_selectall_view 的所有信息
select * from users_selectall_view;-- 查询视图 users_selectall_view 中 id = 2 的人员信息
select * from users_selectall_view where id = 2;


2.创建可替换视图

        为 users 表添加查询 id 和 name 的可替换视图。

create or replace view users_select_id_name_view as select id, name from users;select * from users_select_id_name_view;


3.修改视图

        将上述 users_select_id_name_view 修改为查询 email 是 “17329335210@wx.com” 的用户 id 和 name。

alter view users_select_id_name_view as select id, name from users where email = '17329335210@wx.com';select * from users_select_id_name_view;


4.删除视图

        删除 users_select_id_name_view 视图。

drop view if exists users_select_id_name_view;


5.对视图内容的增、删、改

        对视图的增、删、改会影响原表数据。

(1)增

        为 users_selectall_view 视图新插入一条数据,并重新查询该视图全部信息和 users 表全部信息。

insert into users_selectall_view(name, email) values('白玉兰', '15322739951@wx.com');select * from users_selectall_view;select * from users;


(2)改

        将视图 users_selectall_view 新增的用户姓名修改为“杜睿”,并重新查询该视图全部信息和 users 表全部信息。

update users_selectall_view set name = '杜睿' where id = 4;select * from users_selectall_view;select * from users;


(3)删

         删除视图 users_selectall_view 的全部记录,并重新查询该视图全部信息和 users 表全部信息。

delete from users_selectall_view;select * from users_selectall_view;select * from users;

http://www.xdnf.cn/news/4665.html

相关文章:

  • MCU怎么运行深度学习模型
  • 跨境电商生死局:动态IP如何重塑数据生态与运营效率
  • 【PhysUnits】2.2 Scalar<T> 标量元组结构体(scalar/mod.rs)
  • 文章记单词 | 第66篇(六级)
  • 数据库 postgresql 修改密码 sh
  • 大模型赋能:2D 写实数字人开启实时交互新时代
  • 利用并行处理提高LabVIEW程序执行速度
  • 详解0-1背包的状态转移表
  • 前端实现文件下载
  • 案例分享 | 攻克ADAS开发测试难题,实现单元动态测试新突破
  • 力扣刷题Day 34:随机链表的复制(138)
  • MySQL大数据量查询优化
  • angular的cdk组件库
  • 苍穹外卖(订单状态定时处理、来单提醒和客户催单)
  • hadoop中的序列化和反序列化(4)
  • 快连LetsVPN安装指南
  • LeetCode20_有效的括号
  • 第2章 算法分析基础
  • 记录一下spring-cloud-starter-alibaba-nacos-config 2023.0.3.2与springboot版本及配置问题
  • 如何创建RDD
  • 【AI News | 20250507】每日AI进展
  • MySQL中为什么使用B+树结构、B+树和普通的平衡树的区别
  • Spark jdbc写入崖山等国产数据库失败问题
  • Linux/AndroidOS中进程间的通信线程间的同步 - 共享内存
  • AI 实践探索:辅助生成测试用例
  • 高性能轻量级Rust HTTP服务器框架Hyperlane:开启网络服务开发新体验
  • NLP核心技术解析:大模型与分词工具的协同工作原理
  • 排序算法——桶排序
  • 注意力机制(Attention)
  • 【关于ESP8266下载固件库的问题】