MySQL(挑战1):搭建简易的成绩管理系统的数据库

搭建一个简易的成绩管理系统的数据库

介绍
现需要构建一个简易的成绩管理系统的数据库,来记录几门课程的学生成绩。数据库中有三张表分别用于记录学生信息、课程信息和成绩信息。

数据库表的数据如下:

学生表(student):学生 id 、学生姓名和性别

课程表:课程 id 和课程名

成绩表:成绩 id 、学生 id 、课程 id 和分数

目标


1.MySQL 服务处于运行状态

2.新建数据库的名称为 gradesystem

3.gradesystem 包含三个表:student、course、mark;

student 表包含3列:sid(主键)、sname、gender;
course 表包含2列:cid(主键)、cname;
mark 表包含4列:mid(主键)、sid、cid、score ,注意与其他两个表主键之间的关系。
4.将上述表中的数据分别插入到各个表中

提示


建立表时注意 id 自增和键约束
每个表插入语句可通过一条语句完成

步骤

创建gradesystem.sql程序文件

vim gradesystem.sql
CREATE DATABASE gradesystem;

use gradesystem;

CREATE TABLE student
(
	sid		INT		NOT NULL	AUTO_INCREMENT,     #学生编号,递增
	sname		CHAR(20)	NOT NULL,               #姓名
	gender		CHAR(20)	NOT NULL,               #性别
	CONSTRAINT	stu_key	 PRIMARY KEY (sid)              #主键
);

CREATE TABLE course
(
	cid		INT		NOT NULL	AUTO_INCREMENT,    #课程编号,递增
	cname		CHAR(20)	NOT NULL,              #课程名称
	UNIQUE(cname),
	CONSTRAINT	crs_key	 PRIMARY KEY (cid)             #主键
);

CREATE TABLE mark
(
	mid		INT		NOT NULL	AUTO_INCREMENT	PRIMARY KEY,
	sid		INT,                                   #学生编号
	cid		INT,                                   #课程编号
	score		INT(10),                               #成绩
	FOREIGN	 KEY (sid)	REFERENCES	student(sid),  #外键
	FOREIGN	 KEY (cid)	REFERENCES	course(cid)    #外键
);

完成后,输入命令开启 MySQL 服务并使用 root 用户登录:

#打开 MySQL 服务
sudo service mysql start        

#使用 root 用户登录
mysql -u root -p

加载程序文件:

source ~/mysql/gradesystem.sql

再根据表格插入数据(可以把插入数据的命令也写到gradesystem.sql里面,然后加载就好了)

结果

猜你喜欢

转载自blog.csdn.net/amoscykl/article/details/81511617