尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

数据库作业

数据库作业
📅 发布时间:2026/7/6 6:06:50

MySQL数据库视图知识点整理

6.1 视图的创建与查询

6.1.1 视图基础概念

视图属于逻辑虚拟数据表,本身不存储真实业务数据,所有数据均源自底层实体基础表。数据库仅持久保存视图对应的查询逻辑,不会存储视图查询结果;每次访问视图时,MySQL会自动执行视图绑定的SELECT查询,实时从底层数据表读取数据。

使用视图四大核心优势

1. 简化复杂查询逻辑:将多表联查、多层筛选的复杂SQL封装为视图,后续业务查询直接调用视图,无需重复编写冗长语句
2. 按需展示数据:可过滤冗余字段、筛选有效数据,仅对外暴露业务需要的内容
3. 屏蔽数据表底层关联:使用者无需掌握多张基础表的关联逻辑,降低使用门槛
4. 提升数据库权限安全:无需向用户开放完整实体表访问权限,仅分配视图查询权限,隔离敏感原始数据

6.1.2 视图创建语法

标准创建语句:

sql

CREATE [OR REPLACE] VIEW 视图名称 [(自定义列别名)]
AS SELECT 数据查询语句
[WITH [CASCADED | LOCAL] CHECK OPTION];


关键字释义

- OR REPLACE :若数据库内已存在同名视图,直接覆盖原有视图定义
- WITH CHECK OPTION :通过视图新增、更新数据时,录入内容必须匹配视图WHERE筛选条件,不符合则操作失败
- LOCAL :校验规则仅作用于当前视图,不向上追溯依赖视图
- CASCADED (默认规则):校验时同时校验当前视图与上层所有依赖视图的筛选条件

创建视图硬性限制

1. 同一数据库下,视图名称不可与数据表重名
2. 视图无法创建主键、索引、外键约束
3. 视图内的SELECT语句存在使用限制:不能嵌套FROM子查询、无法引用存储过程变量等

6.1.3 视图查询方式

视图查询语法和实体数据表完全通用,使用方式无差别:

sql

SELECT * FROM 视图名称 WHERE 筛选条件;


关键注意事项

当底层基础表新增字段后,已创建完成的旧视图不会自动同步新增字段,需要重新执行创建语句更新视图定义。

6.2 视图的增删改操作

6.2.1 通过视图操作数据(增/改/删)

仅可更新视图支持INSERT、UPDATE、DELETE操作,视图满足以下任意一种条件则无法更新:

1. 查询包含聚合函数:SUM、AVG、COUNT等
2. 使用分组、去重、合并关键字:GROUP BY、HAVING、DISTINCT、UNION
3. FROM子句关联两张及以上实体表

INSERT 插入规则

若视图配置 WITH CHECK OPTION ,插入数据必须满足视图筛选条件;
底层实体表存在非空字段,但该字段未在视图中展示时,无法执行插入操作。

UPDATE 更新规则

多表关联视图执行更新时,单次操作仅能修改其中一张表的字段,不允许同时修改多张关联表数据。

DELETE 删除规则

重要规定:关联多张数据表的视图,不支持执行DELETE删除语句。

6.2.2 修改已有视图定义

语法:

sql

ALTER VIEW 视图名称
AS SELECT 全新查询逻辑;


6.2.3 删除视图语句

sql

DROP VIEW [IF EXISTS] 视图1,视图2;


IF EXISTS 作用:当目标视图不存在时,执行语句不会抛出报错;支持一条语句批量删除多个视图。

章节核心考点汇总

1. 视图本质是虚拟表,无独立物理存储空间,数据实时取自基础表或其他视图
2. WITH CHECK OPTION 约束作用:管控插入、更新的数据,强制匹配视图筛选条件
3. 多表视图操作限制:UPDATE仅能单表修改,完全禁止DELETE删除操作
4. 底层基础表扩充字段后,原有视图不会自动同步,需重建视图生效

相关新闻

  • 基于libhv与JWT的HTTP认证中间件实战指南
  • Bilibili视频下载终极方案:免费解锁大会员4K和充电专属内容
  • IPXWrapper技术实现深度解析:Windows平台经典网络协议兼容性解决方案

最新新闻

  • STM32与74HC32实现高效按键管理的硬件与软件方案
  • EM3080-W与PIC18F96J94构建高效条形码解码系统
  • PIC18F85K22与M24C04-R EEPROM的嵌入式数据存储方案
  • Java单元测试异常处理:JUnit 5 assertThrows实战指南
  • KMX63与PIC18F46K20的硬件协同与低功耗设计
  • 2026最新5款AI编程工具平替实测合集|进阶开发者低成本高效开发权威教程

日新闻

  • AI智能体安全防护框架AgentGuard:从原理到实战部署指南
  • KMX63与PIC18F26K40硬件组合及低功耗设计实践
  • 基于YOLO13改进的门体检测模型:C3k2模块与PoolingFormer技术解析

周新闻

  • 基于YOLOv12的番茄成熟度智能检测系统开发
  • 终极RimWorld模组管理指南:用RimSort告别模组冲突烦恼
  • AI Agent框架开发:从理论到实践的完整指南

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号