1.学校想做一个选课系统,其中涉及到课程表,学生表,请分别创建这两个表,自己思考表中应有的列及数据类型。
CREATE TABLE course(-- 课程表
id int PRIMARY KEY,-- 课程编号
name VARCHAR(30),-- 课程名
credits int – 学分
)ENGINE=INNODB;
CREATE TABLE student(
id int PRIMARY KEY,-- 学生编号
name VARCHAR(30),-- 学生姓名
age int,-- 年龄
sex char(1)-- 性别
)ENGINE=INNODB;
2.学校有一个选课系统,其中包括如下关系模式:
系(系编号: 主键,系名称: 唯一键,系主任: 非空约束, 系所在校区)
CREATE TABLE system(
id int PRIMARY KEY,
name VARCHAR(30) UNIQUE,
director VARCHAR(20) not null,
campus VARCHAR(30)
)ENGINE=INNODB;
班级(班级编号: 主键, 班级名称: 唯一键,所属系: 外键)
CREATE TABLE class(
id int PRIMARY KEY,
name VARCHAR(30) UNIQUE,
systemid int,
CONSTRAINT class_systemid_fk FOREIGN KEY (systemid) REFERENCES system(id)
)ENGINE=INNODB;
3.创建学生表,包含如下属性:
学号 定长字符型 10位 主键
姓名 变长字符型 20位 非空
性别 定长字符型 2位 取值范围只能为男或女
出生日期 日期型
所在班级
CREATE TABLE student1(
id char(10) PRIMARY KEY,-- 学号 定长字符型 10位 主键
name VARCHAR(20) not null,-- 姓名 变长字符型 20位 非空
sex char(2),
birthday date,
classid int,
CONSTRAINT student1_classid_fk FOREIGN KEY(classid) REFERENCES class(id)
)ENGINE=INNODB;