【数据库系统概论】第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.hqwc.cn/news/300504.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WebRTC概念

定义 一个实时通信标准 通话原理 媒体协商 在WebRTC中,参与视频通讯的双方必须先交换SDP信息,获得一个都支持的编码格式 网络协商 目的:找到一条相互通讯的链路 做法:获取外网IP地址映射,通过信令服务器交换“网…

C语言学习day10:if语句

程序流程结构: C 语言支持最基本的三种程序运行结构:顺序结构、选择结构、循环结构。 顺序结构:程序按顺序执行,不发生跳转。选择结构:依据是否满足条件,有选择的执行相应功能。循环结构:依据条件是否满足,循环多次执行某段代码…

龙芯杯个人赛串口——做一个 UART串口——RS-232

文章目录 Async transmitterAsync receiver1. RS-232 串行接口的工作原理DB-9 connectorAsynchronous communicationHow fast can we send data? 2.波特率时钟生成器Parameterized FPGA baud generator 3.RS-232 transmitter数据序列化完整代码: 4.RS-232 receiver…

VS Code插件开发初步

文章目录 上手入口函数contributes 上手 欲善其事必先利其器,无论做什么开发,第一步肯定是下载工具链。VS Code开发主要用到两个东西,一个是项目的手脚架工具Yeoman,可通过yo来安装;另一个是VS Code的扩展时生成器gen…

机器视觉系统选型-避免畸变

在定位及高精度测量的系统中,镜头畸变的影响尤其重要 • 使用远心镜头 • 进行系统标定

微信小程序picker组件扩展选择时间到秒插件

创建插件seldatetime // 插件JS部分 Component({// 一些选项options: {// 样式隔离:apply-shared 父影响子,shared父子相互影响, isolated相互隔离styleIsolation:"isolated",// 允许多个插槽multipleSlots: true},// 组件的对外属…

前端项目重构的深度思考和复盘

摘要: 项目重构是每一家稳定发展的互联企业的必经之路, 就像一个产品的诞生, 会经历产品试错和产品迭代 一样, 随着业务或新技术的不断发展, 已有架构已无法满足更多业务扩展的需求, 所以只有通过重构来让产品“进化”, 才能跟上飞速发展的时代浪潮. 技术因素 早期…

人工智能:网络犯罪分子的驱动力

随着 2024 年的临近,是时候展望今年的网络安全状况了。由于网络犯罪日益复杂,预计到 2025 年,全球网络安全成本将增至 10.5 万亿美元。 人工智能的使用不断发展,网络犯罪分子变得越来越有创造力 我们注意到,联邦调查…

用C的递归函数求n!-----(C每日一编程)

用递归函数求n! 有了上面这个递归公式就能写C代码了。 参考代码: int fac(int n) {if (n 1 || n 0)return 1;else return n * fac(n - 1); } void main() {int n;scanf("%d",&n);int f fac(n);printf("\n%d!%d\n", n, f); …

119. 杨辉三角 II(Java)

给定一个非负索引 rowIndex,返回「杨辉三角」的第 rowIndex 行。 在「杨辉三角」中,每个数是它左上方和右上方的数的和。 示例 1: 输入: rowIndex 3 输出: [1,3,3,1]示例 2: 输入: rowIndex 0 输出: [1]示例 3: 输入: rowIndex 1 输出: [1,1]提示…

ARM Cortex-A学习(1):GIC(通用中断控制器)详解

文章目录 1 Cortex-A核中断1.1 处理器模式1.2 IRQ模式 2 GIC的操作2.1 CPU Interface2.2 Distributor GIC(通用中断控制器, Generic Interrupt Controller)是一种用于处理中断的硬件组件,它的主要功能是协调和管理系统中的中断请求,确保它们被正确地传递…

VMware安装linux系统二

1、设置光驱 1.1、编辑虚拟机设置 1.2、设置虚拟机镜像 1.3、设置好后开机 2、安装Linux系统 2.1、等待安装 2.2、开始安装 2.3、选择语言,我选择中文 2.4、本地化不用改 2.5、软件选择一定要选,否则就会是默认最小安装 2.6、我这里选择的是带GUI的&am…