实验三

This commit is contained in:
2024-11-10 00:37:10 +08:00
parent 324441279d
commit f5c2c2ac91
2 changed files with 54 additions and 1 deletions
+1 -1
View File
@@ -10,7 +10,7 @@
- ~~实验一 敬请期待~~
- ~~实验二 敬请期待~~
- ~~实验三 敬请期待~~
- [实验三](实验三.sql)
- ~~实验四 敬请期待~~
- ~~实验五 敬请期待~~
- [实验六](实验六.sql)
+53
View File
@@ -0,0 +1,53 @@
-- 1.创建 数据库
CREATE DATABASE 学生管理
-- 2.建表
USE 学生管理;
-- (1)院系表
CREATE TABLE 院系表
(
院系 smallint PRIMARY KEY,
名称 varchar(20),
负责人 varchar(10) not null UNIQUE,
办公地点 varchar(20)
);
-- (2)学生表
CREATE TABLE 学生表(
学号 VARCHAR(8) PRIMARY KEY,
院系编号 SMALLINT,
姓名 varchar(10) NOT NULL,
性别 VARCHAR(2) CHECK(性别 IN('男','女')),
生源地 VARCHAR(6),
状态 VARCHAR(4),
FOREIGN KEY(院系编号) REFERENCES 院系表(院系)
);
-- (3)教师表
CREATE TABLE 教师表
(
教师编号 VARCHAR(8) PRIMARY KEY,
院系编号 SMALLINT,
姓名 VARCHAR(10) NOT NULL,
性别 VARCHAR(2) CHECK(性别 IN('男','女')),
职称 VARCHAR(6) CHECK(职称 IN('教授','副教授','讲师','助教')),
专业 VARCHAR(10),
FOREIGN KEY (院系编号) REFERENCES 院系表(院系)
);
-- (4)课程表
CREATE TABLE 课程表
(
课程编号 VARCHAR(8) PRIMARY KEY,
课程名称 VARCHAR(20) NOT NULL,
责任教师 VARCHAR(8),
学时 SMALLINT,
课程性质 VARCHAR(10) CHECK(课程性质 IN('公共基础','专业基础','专业选修','任意选修')),
FOREIGN KEY(责任教师) REFERENCES 教师表(教师编号)
);
--(5) 选课表
CREATE TABLE 选课表(
学号 VARCHAR(8),
课程编号 VARCHAR(8),
成绩 SMALLINT DEFAULT NULL CHECK(成绩 BETWEEN 0 AND 100),
PRIMARY KEY(学号,课程编号),
FOREIGN KEY(学号) REFERENCES 学生表(学号),
FOREIGN KEY(课程编号) REFERENCES 课程表(课程编号)
);