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

【数据库系统概论】第3章-关系数据库标准语言SQL(3)

文章目录

    • 3.5 数据更新
      • 3.5.1 插入数据
      • 3.5.2 修改数据
      • 3.5.3 删除数据
    • 3.6 空值的处理
    • 3.7 视图
      • 3.7.1 建立视图
      • 3.7.2 查询视图
      • 3.7.3 更新视图
      • 3.7.4 视图的作用

3.5 数据更新

3.5.1 插入数据

注意:插入数据时要满足表或者列的约束条件,否则插入失败,不成功!

// 挑选字段插入
insert into student(sno, sname) values('001','zs')
// 插入所有属性
insert into student values('001','zs','male')
// 一次插入多条
insert into student values('001','zs','male')
values('002','ls','famale')
// 插入子查询结果
insert into student2
select sno, sname
from student

3.5.2 修改数据

// 注意+where条件,否则全部被修改
update student
set sex = 'female'
where sno = '001'
//带子查询的修改
update student
set sex = 'male'
where sno in(select sno from scwhere sdept = 'cs')
  • 练习
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

3.5.3 删除数据

// 注意加where条件,否则删除全部
delete from student where sno = '001'
// 带子查询的
delete from sc
where sno in(select snofrom studentwhere sdept = 'cs'
)

3.6 空值的处理

  • 空值的约束
    在这里插入图片描述
  • 空值的运算
    在这里插入图片描述
  • 练习
    在这里插入图片描述

3.7 视图

3.7.1 建立视图

  1. 创建视图
    在这里插入图片描述
    在这里插入图片描述

    DBMS执行CREATE VIEW语句时只是把视图定义存入数据字典,并不执行其中的SELECT语句。在对视图查询时,按视图的定义从基本表中将数据查出。

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述 不指定属性列的坏处
    在这里插入图片描述

  • with check option
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  1. 删除视图
  • 格式
    在这里插入图片描述
    在这里插入图片描述

3.7.2 查询视图

  • 视图消解
    在这里插入图片描述
    在这里插入图片描述

3.7.3 更新视图

  • 视图消解,配合with check option
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 不可更新的情况(无法消解)
    在这里插入图片描述

3.7.4 视图的作用

  1. 视图能够简化用户的操作
  2. 视图使用户能以多种角度看待同一数据
  3. 视图对重构数据库提供了一定程度的逻辑独立性
  4. 视图能够对机密数据提供安全保护
  5. 适当的利用视图可以更清晰的表达查询
http://www.lryc.cn/news/267644.html

相关文章:

  • 理解io/nio/netty
  • 旅游品牌网站搭建的作用是什么
  • Linux操作系统——进程(五)环境变量
  • 西门子博途怎么使用PID_Compact做pid调试
  • 结构型模式 | 适配器模式
  • 基于Python的车牌识别系统实现
  • 时间序列预测模型介绍及使用经验总结
  • Docker知识总结
  • 算法训练营Day25
  • docker笔记2-docker 容器
  • redis 从0到1完整学习 (七):ZipList 数据结构
  • 2015年第四届数学建模国际赛小美赛C题科学能解决恐怖主义吗解题全过程文档及程序
  • 基于Java开发的微信约拍小程序
  • 蓝桥杯的学习规划
  • EMC噪声的本质
  • Redis遇到过的问题 (Could not get a resource from the pool )
  • Spring Boot 3.2 新特性之 HTTP Interface
  • Flask+Mysql项目docker-compose部署(Pythondocker-compose详细步骤)
  • DDOS攻击简介——什么是DDOS
  • 龙蜥开源操作系统能解决CentOS 停服造成的空缺吗?
  • 『Linux升级路』基础开发工具——gdb篇
  • 边缘计算云边端全览—边缘计算系统设计与实践【文末送书-10】
  • 使用PE信息查看工具和Dependency Walker工具排查因为库版本不对导致程序启动报错的问题
  • Servlet技术之Cookie对象与HttpSession对象
  • winlogbeat收集Windows事件日志传给ELK
  • Gin框架之使用 go-ini 加载.ini 配置文件
  • SpringMVC:整合 SSM 上篇
  • BFS解决多源最短路相关leetcode算法题
  • ARM GIC(四) gicv3架构基础
  • Kafka日志