mysql数据库 用代码建表

来源:互联网 发布:php 短信api 编辑:程序博客网 时间:2024/06/10 08:59

实验(二):创建数据表

用T-SQL代码创建以下表

表2-1Class(班级)表
列名 中文名 数据类型 精度 说明
ClassID 班级号 Char 8 主键
ClassName 班级名称 varChar 20 非空
Monitor 班长姓名 Char 8
StudentNum 学生人数 Int
DepartmentID 系别号 Char 4 外键,引用系别表的系别号
表2-2Student(学生)表
列名 中文名 数据类型 精度 说明
StudentID 学号 Char 12 主键
StudentName 学生姓名 Char 8 非空
Sex 性别 enum 非空,取值为“男”或“女”
Birth 出生日期 Date 非空
HomeAddr 家庭住址 varchar 80
EntranceTime 入学日期 Date
ClassID 班级号 Char 8 外键,引用班级表的班级号
表2-3 Course(课程)表
列名 中文名 数据类型 精度 说明
CourseID 课程号 Char 8 主键
CourseName 课程名 varChar 60 非空
BookName 教材名 varChar 80 非空
Period 学时 Int 非空
Credit 学分 int 非空

表2-4 Grade(成绩)表
列名 中文名 数据类型 精度 说明
CourseID 课程号 Char 8 主键,外键参照课程表课程号
StudentID 学号 Char 12 主键,外键参照学生表学号
Semester 学期 Int 非空
SchoolYear 学年 Int
Grade 成绩 decimal 5,1
表2-5 Department(系别)表
列名 中文名 数据类型 精度 说明
DepartmentID 系别号 Char 4 主键
DepartmentName 系名称 varChar 20 非空,唯一
DepartmentHeader 系主任 varChar 8 非空
TeacherNum 老师人数 Int
表2-6Teacher(教师)表
列名 中文名 数据类型 精度 说明
TeacherID 教师号 Char 8 主键
TeacherName 教师姓名 Char 8 非空
Sex 性别 enum 非空,取值为“男”或“女”
Birth 出生日期 Date
Profession 职位 enum 取值为“教授”、“副教授”、“讲师”、“助教”
Telephone 联系电话 varchar 20
HomeAddr 家庭地址 varchar 50
DepartmentID 系别号 char 4 外键参照系别表系别号
表2-7 Schedule(排课)表
列名 中文名 数据类型 精度 说明
TeacherID 教师号 Char 8 主键,外键参照教师表教师号
CourseID 课程号 Char 8 主键,外键参照课程表课程号
ClassID 班级号 Char 8 主键,外键参照班级表班级号
Semester 学期 Int 非空
SchoolYear 学年 Int 非空
ScheduleIdent 排课标识 Varchar 40 非空
Classroom 上课教室 Varchar 20 非空

【实验总结】
这里写图片描述
这里写图片描述

这里写图片描述
经验总结:
在试验的过程中,实验要求由于外键必须依赖主键,且外键可以为空,所以需要多个主键,则可以创建多个字段主键的表。
外键创建时,模板为 constraint 约束名 foreign key (表A字段名或字段名列表) references 表B(字段名或字段名列表)[on delete级联选项][on update级联选项]

原创粉丝点击