MySQL数据库实验(六):创建学生信息管理系统

学生信息管理系统内容:
学生表student(Sno,Sname,Ssex,Sage,Sdept)
课程表course(Cno,Cname,Cpno,Ccredit)
学生选课表SC(Sno,Cno,Grade)

一、 创建数据库并使用

mysql> use dx;
Database changed

二、 创建数据库表并显示数据课表结构

学生选课表SC(Sno,Cno,Grade)

mysql> create table SC
    -> (Sno varchar(255),
    -> Cno varchar(255),
    -> Grade smallint
    -> );
Query OK, 0 rows affected (0.06 sec)

mysql> desc sc;
+-------+--------------+------+-----+---------+-------+
| Field | Type         | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| Sno   | varchar(255) | YES  |     | NULL    |       |
| Cno   | varchar(255) | YES  |     | NULL    |       |
| Grade | smallint(6)  | YES  |     | NULL    |       |
+-------+--------------+------+-----+---------+-------+
3 rows in set (0.05 sec)

mysql>

学生表student(Sno,Sname,Ssex,Sage,Sdept)

mysql> create table student(Sno varchar(255),Sname varchar(255),Sage int,Sdept varchar(255));
Query OK, 0 rows affected (0.08 sec)

mysql> desc student;
+-------+--------------+------+-----+---------+-------+
| Field | Type         | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| Sno   | varchar(255) | YES  |     | NULL    |       |
| Sname | varchar(255) | YES  |     | NULL    |       |
| Sage  | int(11)      | YES  |     | NULL    |       |
| Sdept | varchar(255) | YES  |     | NULL    |       |
+-------+--------------+------+-----+---------+-------+
4 rows in set (0.01 sec)

mysql>

课程表course(Cno,Cname,Cpno,Ccredit)

mysql> create table course(Cno varchar(255),Cname varchar(255),Cpno int,Ccredit varchar(255));
Query OK, 0 rows affected (0.09 sec)

mysql> desc course;
+---------+--------------+------+-----+---------+-------+
| Field   | Type         | Null | Key | Default | Extra |
+---------+--------------+------+-----+---------+-------+
| Cno     | varchar(255) | YES  |     | NULL    |       |
| Cname   | varchar(255) | YES  |     | NULL    |       |
| Cpno    | int(11)      | YES  |     | NULL    |       |
| Ccredit | varchar(255) | YES  |     | NULL    |       |
+---------+--------------+------+-----+---------+-------+
4 rows in set (0.01 sec)

显示数据库中是数据库表:

mysql> show tables;
+--------------+
| Tables_in_dx |
+--------------+
| course       |
| sc           |
| student      |
+--------------+
3 rows in set (0.00 sec)

三、 在数据库表中插入数据

在数据库表SC中插入数据:

mysql>  insert into SC values('20161018','1',90);
Query OK, 1 row affected (0.00 sec)

mysql>  insert into SC values('20161019','2',90);
Query OK, 1 row affected (0.00 sec)

mysql>  insert into SC values('20161020','3',100);
Query OK, 1 row affected (0.00 sec)

mysql>  insert into SC values('20161021','4',89);
Query OK, 1 row affected (0.00 sec)

mysql> select * from SC;
+----------+------+-------+
| Sno      | Cno  | Grade |
+----------+------+-------+
| 20161018 | 1    |    90 |
| 20161019 | 2    |    90 |
| 20161020 | 3    |   100 |
| 20161021 | 4    |    89 |
+----------+------+-------+
4 rows in set (0.00 sec)

其他数据库表插入数据也一样,不过需要注意的是变量的形式(字符型、整型、浮点数)

mysql> select * from student;
+----------+-------+------+------+-------+
| Sno      | Sname | Ssex | Sage | Sdept |
+----------+-------+------+------+-------+
| 20161018 | 里勇  ||   20 | CS    |
| 20161019 | 刘成  ||   19 | IS    |
| 20161020 | 王敏  ||   19 | MA    |
| 20161021 | 张里  ||   18 | MA    |
+----------+-------+------+------+-------+
4 rows in set (0.00 sec)

mysql> select Sno,Sname from student;
+----------+-------+
| Sno      | Sname |
+----------+-------+
| 20161018 | 里勇  |
| 20161019 | 刘成  |
| 20161020 | 王敏  |
| 20161021 | 张里  |
+----------+-------+
4 rows in set (0.00 sec)

mysql> select Sname,2016-Sage from student;
+-------+-----------+
| Sname | 2016-Sage |
+-------+-----------+
| 里勇  |      1996 |
| 刘成  |      1997 |
| 王敏  |      1997 |
| 张里  |      1998 |
+-------+-----------+
4 rows in set (0.00 sec)

mysql> select * from course;
+-----+----------+------+---------+
| Cno | Cname    | Cpno | Ccredit |
+-----+----------+------+---------+
| 1   | 高数     | 1    |       6 |
| 2   | 大物     | 2    |       4 |
| 3   | 数电     | 3    |       6 |
| 4   | 大学英语 | 4    |       5 |
| 5   | 数据库   | 5    |       3 |
+-----+----------+------+---------+
5 rows in set (0.04 sec)

四、将数据库表进行改名

mysql> select Sname as 姓名,'Year of Birth:',2016-Sage 出生年份,lower(Sdept) 学院 from student;
+------+----------------+----------+------+
| 姓名 | Year of Birth: | 出生年份 | 学院 |
+------+----------------+----------+------+
| 里勇 | Year of Birth: |     1996 | cs   |
| 刘成 | Year of Birth: |     1997 | is   |
| 王敏 | Year of Birth: |     1997 | ma   |
| 张里 | Year of Birth: |     1998 | ma   |
+------+----------------+----------+------+
4 rows in set (0.00 sec)

五、 对数据库表进行各种操作

mysql> select Sno from SC;
+----------+
| Sno      |
+----------+
| 20161018 |
| 20161019 |
| 20161020 |
| 20161021 |
+----------+
4 rows in set (0.00 sec)

mysql> select distinct Grade from SC;
+-------+
| Grade |
+-------+
|    90 |
|   100 |
|    89 |
+-------+
3 rows in set (0.00 sec)

mysql> select distinct Sno from SC where Grade > 90;
+----------+
| Sno      |
+----------+
| 20161020 |
+----------+
1 row in set (0.00 sec)

mysql> select Sname,Ssex
    -> from student
    -> where Sdept = 'IS' or Sdept = 'MA' or Sdept = 'CS';
+-------+------+
| Sname | Ssex |
+-------+------+
| 里勇  ||
| 刘成  ||
| 王敏  ||
| 张里  ||
+-------+------+
4 rows in set (0.00 sec)

mysql> select count(*) from student;
+----------+
| count(*) |
+----------+
|        4 |
+----------+
1 row in set (0.00 sec)

mysql> select avg(Grade) from SC;
+------------+
| avg(Grade) |
+------------+
|    92.2500 |
+------------+
1 row in set (0.00 sec)

mysql> select Cno,count(Sno)
    -> from SC
    -> group by Cno;
+------+------------+
| Cno  | count(Sno) |
+------+------------+
| 1    |          1 |
| 2    |          1 |
| 3    |          1 |
| 4    |          1 |
+------+------------+
4 rows in set (0.00 sec)

mysql> select Cno,avg(Grade)
    -> from SC
    -> group by Cno;
+------+------------+
| Cno  | avg(Grade) |
+------+------------+
| 1    |    90.0000 |
| 2    |    90.0000 |
| 3    |   100.0000 |
| 4    |    89.0000 |
+------+------------+
4 rows in set (0.00 sec)
mysql> select student.*,sc.*
    -> from student,sc
    -> where student.Sno = sc.Sno;
+----------+-------+------+------+-------+----------+------+-------+
| Sno      | Sname | Ssex | Sage | Sdept | Sno      | Cno  | Grade |
+----------+-------+------+------+-------+----------+------+-------+
| 20161018 | 里勇  ||   20 | CS    | 20161018 | 1    |    90 |
| 20161019 | 刘成  ||   19 | IS    | 20161019 | 2    |    90 |
| 20161020 | 王敏  ||   19 | MA    | 20161020 | 3    |   100 |
| 20161021 | 张里  ||   18 | MA    | 20161021 | 4    |    89 |
+----------+-------+------+------+-------+----------+------+-------+
4 rows in set (0.00 sec)

mysql> select student.Sno,Sname,Ssex,Sage,Sdept,Cno,Grade
    -> from student,sc
    -> where student.Sno = sc.Sno;
+----------+-------+------+------+-------+------+-------+
| Sno      | Sname | Ssex | Sage | Sdept | Cno  | Grade |
+----------+-------+------+------+-------+------+-------+
| 20161018 | 里勇  ||   20 | CS    | 1    |    90 |
| 20161019 | 刘成  ||   19 | IS    | 2    |    90 |
| 20161020 | 王敏  ||   19 | MA    | 3    |   100 |
| 20161021 | 张里  ||   18 | MA    | 4    |    89 |
+----------+-------+------+------+-------+------+-------+
4 rows in set (0.00 sec)

mysql> select student.Sno,Sname,Cname,Grade
    -> from student,sc,course
    -> where student.Sno = sc.Sno and sc.Cno = course.Cno;
+----------+-------+----------+-------+
| Sno      | Sname | Cname    | Grade |
+----------+-------+----------+-------+
| 20161018 | 里勇  | 高数     |    90 |
| 20161019 | 刘成  | 大物     |    90 |
| 20161020 | 王敏  | 数电     |   100 |
| 20161021 | 张里  | 大学英语 |    89 |
+----------+-------+----------+-------+
4 rows in set (0.00 sec)

mysql>

这篇博文主要是利用数据库对学生信息进行管理,它可以利用各种操作对学生信息进行增删减查,非常的方便!!!

当然最重要的是你自己动手去做,不然一切免谈,也不要指望着别人。。。嘻嘻嘻。。。送我个赞呗。。。

各位老铁们,给我个三连击呗,可以让更多的人看到这篇文章,同时也激励一下我
各位老铁们,给我个三连击呗,可以让更多的人看到这篇文章,同时也激励一下我
各位老铁们,给我个三连击呗,可以让更多的人看到这篇文章,同时也激励一下我

在这里插入图片描述

原创文章 58 获赞 115 访问量 1万+

猜你喜欢

转载自blog.csdn.net/ywsydwsbn/article/details/105678698