实验五   数据更新

一、实验目的

掌握数据更新操作的用法。

二、实验环境

三、实验示例

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数据库实验五:数据更新的更多相关文章

  1. MySQL数据库实验:任务一 创建数据库和表

    目录 任务一 创建数据库和表 [实训目的与要求] [实训原理] [实训步骤] 一.熟悉MySQL环境 二.利用MySQL命令行窗口创建数据库及表 三.利用界面工具创建数据库及表 任务一 创建数据库和表 ...

  2. MySQL数据库(五)--用户管理、pymysql模块

    一.用户管理(权限管理) 在MySQL中自带的mysql数据库中有4个表用于用户管理的 # 优先级从高到低 user > db > tables_priv > columns_pri ...

  3. MySQL数据库(五)—— 用户管理、pymysql模块

    用户权限管理.pymysql模块 一.用户管理(权限管理) 在MySQL中自带的mysql数据库中有4个表用于用户管理的 # 优先级从高到低 user > db > tables_priv ...

  4. MySQL数据库实验:任务二 表数据的插入、修改及删除

    目录 任务二 表数据的插入.修改及删除 一.利用界面工具插入数据 二.数据更新 (一)利用MySQL命令行窗口更新数据 (二)利用Navicat for MySQL客户端工具更新数据 三.数据库的备份 ...

  5. MYSQL数据库学习五 表的操作和约束

    5.1 表的基本概念 表示包含数据库中所有数据的数据库对象.一行代表唯一的记录,一列代表记录的一个字段. 列(Columns):属性列,创建表时必须指定列名和数据类型. 索引(Indexes):根据指 ...

  6. MySQL数据库实验六:存储过程建立与调用

    实验六  存储过程建立与调用 一.实验目的 理解存储过程的概念.建立和调用方法. 二.实验环境 三.实验示例 1.定义一个函数,按性别计算所有学生的平均年龄. CREATE FUNCTION aver ...

  7. Mysql数据库(五)表记录的检索

    一.基本查询语句 二.单表查询 1.查询所有字段 mysql> SELECT * FROM tb_bookinfo; +----------+-----------+--------+----- ...

  8. MySQL数据库实验四:嵌套查询

    实验四          嵌套查询 一.实验目的 掌握SELECT语句的嵌套使用,实现表的复杂查询,进一步理解SELECT语句的高级使用方法. 二.实验环境 三.实验示例 1.  查询与“刘晨”在同一 ...

  9. MySQL数据库实验三:连接查询

    实验三    连接查询 实验名称:连接查询(2课时) 一.实验目的 理解JOIN语句的操作和基本使用方法,掌握内连接.外连接.自身连接的概念和使用. 二.实验环境 是MS SQL SERVER 200 ...

随机推荐

  1. 7.Hibernate 检索

    1.Hibernate检索方式 检索方式简介: 导航对象图检索方式:根据已经加载的对象,导航到其他对象.OID检索方式:按照对象的OID来检索对象.Session 的 get() 和 load() 方 ...

  2. Java学习笔记day05_方法重载

    1.方法的重载overload 在同一个类中, 允许出现同名的方法, 只要方法的参数列表不同即可. 参数列表不同: 参数个数不同, 参数类型不同, 顺序不同. public class MethodO ...

  3. nginx -s reload "/alidata/server/nginx/logs/nginx.pid" failed

    [root@snoopy :: vhosts]# nginx -s reload nginx: [error] open() : No such file or directory) 修改完nginx ...

  4. var在IE中的问题

    一个朋友问了一个js问题, 一段看不出有任何问题的代码, 在ie下报错:”object doesn’t support this property or method”. function foo(o ...

  5. 工作ui(2)

    做完整个小Demo整理的一些方法和踩过的miniUI的坑,分享出来希望大家批评指正,共同进步. 1.动态创建列:尽量不要直接在html文件里创建列,动态设置在js文件里方面添加.修改等. 首先把列定义 ...

  6. .NET接收邮件下载邮件附件——openpop.net

    使用OpenPop.Net接收邮件很方便,下面是接收下载邮件附件的代码 OpenPop.Net下载地址 https://sourceforge.net/projects/hpop/ public cl ...

  7. 《我在谷歌大脑见习机器学习的一年:Node.js创始人的尝试笔记》阅读笔记

    文章来源:https://www.toutiao.com/i6539751003690893828/?tt_from=weixin_moments&utm_campaign=client_sh ...

  8. Java基础14-多维数组

    1.二位数组可以看成以数组为元素的数组 2.java中多维数组的声明和初始化一样,应该从高维到低维的顺序进行,例如 int[][] a=new int[3][]; a[0]=new int[2]; a ...

  9. (转)ping命令

    ping命令 原文:https://www.cnblogs.com/peida/archive/2013/03/06/2945407.html Linux系统的ping命令是常用的网络命令,它通常用来 ...

  10. http三次握手四次挥手

    最近一直忙于看前端vue相关内容,后端相关内容没有跟进,文章停了3周,,,哎,还是懒吧!子曰生命在于运动,该学习还是要学的,文章嘛也还是要整理滴,不扯了--- 参考: https://blog.csd ...