-- 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 课程表(课程编号) );