数据库实验报告二

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_38224607/article/details/80264031

数据库表的数据操作

实验时间:××××年××月××日 上(下)午 1、2(或3、4)节

实验地点:和容B302

学号:164804035

姓名:宋倩倩

班级:java一班

实验成绩(由教师填写):____________

评语(由教师填写):

 

 

 

任课教师姓名:马晓珺

1 实验目的

(1) 掌握利用INSERT命令实现对表数据的插入操作。

(2) 掌握利用UPDATE命令实现对表数据的修改操作。

(3) 掌握利用DELETE命令实现对表数据的删除操作。

(4) 掌握利用select命令实现对表数据的查询操作。

2 实验任务

使用Navicat工具操作:(不需要写出步骤)

利用备份恢复上次实验建立的数据库,参考步骤如下:

(1)建立数据库;

(2)还原数据库;

(3)复制student、sc、course三个表文件。

 

使用SQL语句操作(需在实验步骤中写出相应SQL命令):

在stu_info数据库中完成下面操作:

 (1) 向Student表中插入记录("201215130","张静","女",”19”,"CS")。

 (2) 插入学号为“201215131”、姓名为“李四”的学生信息。

 (3) 把CS系的学生记录保存到表TS中(TS表已存在,表结构与Student表相同)。

 (4) 将学号为“201215125”的学生姓名改为“张华”。

 (5) 将“201215121”学生选修“3”号课程的成绩改为80。

 (6) 删除学号为“201215131”的学生记录。

(7)把“张晨”同学的成绩全部删除。

 (8) 查询“CS”系女学生的学生学号、姓名及考试成绩。

(9)查询“李勇”同学所选课程的成绩。(不考虑重名)

(10)查询至少选修一门课程的女学生姓名。

(11)查询选修“数据库”课程且成绩在80~90分之间的学生学号及成绩。à查询姓名?

(12)查询课程成绩及格的男同学的学生信息及课程号与成绩。

(13)查询选修“2”课程的学生的平均年龄。

3 实验环境

Windows系统mysql5.5、Navicat forMySQL

4 实验步骤

(请将实验任务中在mysql5.5环境下执行过的相应题目的SQL操作命令写出。)

(1)  SQL命令入下:

mysql> use stu_info;

Database changed

mysql> insert into student

   -> values('201215130','zhangjing','nv','19','cs');

Query OK, 1 row affected (0.00 sec)

 

(2)  SQL命令入下:

mysql> insert into student

   -> values('201215131','lisi','nan',null,null);

Query OK, 1 row affected (0.00 sec)

 

 

(3)SQL命令入下:

  mysql> insert into ts select*from student where sdept='cs';

Query OK, 2 rows affected

Records: 2  Duplicates: 0  Warnings: 0

 

mysql> select *from ts;

+-----------+-------+-----+------+-------+

| sno       | sname | sex | sage |sdept |

+-----------+-------+-----+------+-------+

| 201215121 | 李勇  | 男 |   20 | cs    |

| 201215122 | 刘晨  | 女 |   19 | cs    |

+-----------+-------+-----+------+-------+

2 rows in set

 

(4)

mysql> update student setSname='zhanghua' where Sno='201215122';

Query OK, 1 row affected (0.00 sec)

Rows matched: 1  Changed: 1 Warnings: 0

 

(5)

mysql>  updatesc set Grade='80' where Cno='3'and Sno='201215122';

Query OK, 0 rows affected (0.00 sec)

Rows matched: 0 Changed: 0  Warnings: 0

 

(6)

mysql> delete from student whereSno='201215131';

Query OK, 1 row affected (0.00 sec)

(7)

mysql> delete from sc where Sno in(

   -> select Sno from student where Sname='zhangchen');

Query OK, 1 row affected (0.00 sec)(8)

(8)

select sname,grade,student.sno from student,sc where student.sno=sc.sno and student.sex='女' and student.sdept='cs';

 

(9)

select Grade,Cno from student,sc wherestudent.Sno=sc.Sno and Sname='liyong';

+-------+-----+

| Grade | Cno |

+-------+-----+

| 92   | 1   |

| 85   | 2   |

| 88   | 3   |

+-------+-----+

3 rows in set (0.00 sec)

 

(10)

mysql> select Sname from student where Ssex='nv' and Sno in( select Snofrom sc group by Sno having count(*)>=1);

Empty set (0.00 sec)

 

(11)

select student.Sno,sc.Grade fromstudent,sc,course where sc.Cno=course.Cno and student.Sno=sc.Sno andCname='shujuku' and sc.Grade between 80 and 90;

Empty set (0.00 sec)

 

(12)

mysql> select student.sno,sname,grade,cname,sage,sex,sc.cno fromstudent,sc,course where sc.cno=course.cno and student.sno=sc.sno and sex='nan'and grade>=60;

+-----------+-------+-------+----------+------+-----+-----+

| sno       | sname | grade |cname    | sage | sex | cno |

+-----------+-------+-------+----------+------+-----+-----+

| 201215121 | 李勇  |   92 | 数据库   |  20 | 男  |  1 |

| 201215121 | 李勇  |   85 | 数学     |   20 | 男  |  2 |

| 201215121 | 李勇  |   88 | 信息系统 |   20 | 男 |   3 |

+-----------+-------+-------+----------+------+-----+-----+

3 rows in set

 

 

(13)

mysql> select avg(sage) from student,course,sc where student.sno=sc.snoand sc.cno=course.cno and course.cno=2;

+-----------+

| avg(sage) |

+-----------+

| 20.0000   |

+-----------+

1 row in set

 

 

5 实验总结

通过这节实验课学习,我能把之前学的知识联系到一块,实现表的查询,更新,删除,插入等基本操作,要注意回顾老师上课所讲的东西,把握重点,课下练习必不可少,争取达到不看书能准确而快速的敲出命令。


猜你喜欢

转载自blog.csdn.net/qq_38224607/article/details/80264031