MySQL数据库实验五:数据更新
实验五 数据更新
一、实验目的
掌握数据更新操作的用法。
二、实验环境
三、实验示例
1、往基本表SC中插入元组。
① INSERT INTO S(S#,SNAME,AGE,SEX)
VALUES('S36','GU',20,'M');
② INSERT INTO SC(S#,C#)
VALUES('S5','C8');
③ INSERT INTO SC
VALUES('S4','C4',85),
('S3','C6',90),
('S7','C2',70);
④ INSERT INTO S_SCORE(S#, AVG_SCORE)
SELECT S#,AVG(SCORE) FROM SC
WHERE S# IN
(SELECT S# FROM S WHERE SEX='M')
GROVP AY S#
HAVING AVG(SCORE)>80;
2、 把课程名为MATHS的成绩从基本表SC中删除,
DELETE FROM SC
WHERE C# IN (SELECT C# FROM C
WHERE CNAME='MATHS');
3、把C4课程中小于该课程平均成绩的成绩元组从基本表SC中删除。
DELETE FROM SC
WHERE C#='C4'
AND SCORE<(SELECT AVG(SCORE)FROM SC
WHERE C#='C4');
4、对基本表SC和C中的值进行修改。
① 把C5课程的课程名改为DB。
UPDATE C
SET CNAME='DB'
WHERE C#='C5';
② 把女同学的成绩提高10% 。
UPDATE SC
SET SCORE=SCORE * 1.1
WHERE S# IN(SELECT S# FROM S
WHERE SEX='F');
③当C4课的成绩低于该门课程平均成绩时,提高5%。
UPDATE SC
SET SCORE=SCORE * 1.05
WHERE C#='C4'
AND SCORE<(SELECT AVG(SCORE) FROM SC
WHERE C#='C4');
④在C中,把课程号为C5的元组修改为(C5,DB,LIU):
UPDATE C
SET ROW =('C5', 'DB', 'LIU')
WHERE C# = 'C5';
四、实验内容与步骤
1、 往关系C中插一个课程元组('C8','VC++','BAO')。
2、 检索所授每门课程平均成绩均大于80分的教师姓名,并把检索到的值送往另一个已存在的表FACULTY(TNAME)。
3、 在SC中删除尚无成绩的选课元组。
4、 把选修LIU老师课程的女同学选课元组全部删去。
5、 把MATHS课不及格的成绩全改为60分。
6、 把低于所有课程总平均成绩的女同学成绩提高5%。
7、 在表SC中,当某个成绩低于全部课程的平均成绩时,提高5%。
MySQL数据库实验五:数据更新的更多相关文章
- MySQL数据库实验:任务一 创建数据库和表
目录 任务一 创建数据库和表 [实训目的与要求] [实训原理] [实训步骤] 一.熟悉MySQL环境 二.利用MySQL命令行窗口创建数据库及表 三.利用界面工具创建数据库及表 任务一 创建数据库和表 ...
- MySQL数据库(五)--用户管理、pymysql模块
一.用户管理(权限管理) 在MySQL中自带的mysql数据库中有4个表用于用户管理的 # 优先级从高到低 user > db > tables_priv > columns_pri ...
- MySQL数据库(五)—— 用户管理、pymysql模块
用户权限管理.pymysql模块 一.用户管理(权限管理) 在MySQL中自带的mysql数据库中有4个表用于用户管理的 # 优先级从高到低 user > db > tables_priv ...
- MySQL数据库实验:任务二 表数据的插入、修改及删除
目录 任务二 表数据的插入.修改及删除 一.利用界面工具插入数据 二.数据更新 (一)利用MySQL命令行窗口更新数据 (二)利用Navicat for MySQL客户端工具更新数据 三.数据库的备份 ...
- MYSQL数据库学习五 表的操作和约束
5.1 表的基本概念 表示包含数据库中所有数据的数据库对象.一行代表唯一的记录,一列代表记录的一个字段. 列(Columns):属性列,创建表时必须指定列名和数据类型. 索引(Indexes):根据指 ...
- MySQL数据库实验六:存储过程建立与调用
实验六 存储过程建立与调用 一.实验目的 理解存储过程的概念.建立和调用方法. 二.实验环境 三.实验示例 1.定义一个函数,按性别计算所有学生的平均年龄. CREATE FUNCTION aver ...
- Mysql数据库(五)表记录的检索
一.基本查询语句 二.单表查询 1.查询所有字段 mysql> SELECT * FROM tb_bookinfo; +----------+-----------+--------+----- ...
- MySQL数据库实验四:嵌套查询
实验四 嵌套查询 一.实验目的 掌握SELECT语句的嵌套使用,实现表的复杂查询,进一步理解SELECT语句的高级使用方法. 二.实验环境 三.实验示例 1. 查询与“刘晨”在同一 ...
- MySQL数据库实验三:连接查询
实验三 连接查询 实验名称:连接查询(2课时) 一.实验目的 理解JOIN语句的操作和基本使用方法,掌握内连接.外连接.自身连接的概念和使用. 二.实验环境 是MS SQL SERVER 200 ...
随机推荐
- linux 学习 (基于ubuntu)
一. 在虚拟机中安装ubuntu 可参考如下博客: https://blog.csdn.net/u014337397/article/details/80751753 二. 关于linux的 ...
- Photoshop入门教程(二):暂存盘设置与标尺设置
新建文档之后大家就可以对图像进行编辑.在对图像进行编辑之前,先来了解一下如何查看图像的一些基本信息.在软件左下角,会有这样的信息显示窗口. 1窗口表示当前图像显示比例,200%代表当前为放大两倍显示. ...
- SecureCRT 遇到一个致命的错误且必须关闭
1.将报错路径中VanDyke文件夹内的东西删除掉2.运行regedit,在注册表中将HKEY_LOCAL_MACHINA中SOFTWARE里的VanDyke删除3.注册表中打开HKEY_CURREN ...
- opencv-将分离合并图像(Red通道>125置255<=置0)
#include <iostream> #include <opencv2/opencv.hpp> #include "opencv2/imgproc/imgproc ...
- vue 之 nextTick 与$nextTick
VUE中Vue.nextTick()和this.$nextTick()怎么使用? 官方文档是这样解释的: 在下次 DOM 更新循环结束之后执行延迟回调.在修改数据之后立即使用这个方法,获取更新后的 D ...
- nginx + uwsgi 配置参考
参考 http://www.runoob.com/django/django-nginx-uwsgi.html ####### 20181029 cd ~wget http://python.org/ ...
- linux查看当前用户登陆信息
@(Linux基础)[linux查看当前用户登陆信息] linux查看当前用户登陆信息 作为系统管理员,你可能经常会(在某个时候)需要查看系统中有哪些用户正在活动.有些时候,你甚至需要知道他(她)们正 ...
- 快速创建jquery插件
介绍 什么是插件? 插件我们见得很多了,比如浏览器上我们会安装一些去除广告的插件.美化页面的插件等等. 在前端,我们也常常写一些jquery插件来使用.来添加我们常常写的一些功能,方便使用. 为什么要 ...
- 自定义java代码快捷生成器使用与问题解决
对于很多的工作了有几年的开发人员来说,初期都是逐个单词语法的自己编写的.而一旦技术水平提高了到了一定的层次之后,在同时工作量的加大,要求我们必须加快提高工作效率.因此就可以利用必要的快捷开发手段和工具 ...
- etc
小小的注意点们 交换两个变量的值时, 如果使用异或运算符, 需要先判断两个数是否相等 if (a == b) return; a ^= b; b = a ^ b; a ^= b; 取一个数组的中间位置 ...