MySQL創建表與表之間的聯系


選課系統

6. 創建數據庫創建數據庫設置編碼為UTF8

CREATE DATABASE choose CHARSET = utf8;

 6.1 創建班級表

表名:classes
字段:
class_no 整型 自增長 主鍵 -- 班級編號
class_name char(20) 非空   唯一 -- 班級名稱
department_name char(20) 非空 -- 院系名稱

create table classes(
    class_no int auto_increment primary key,
    class_name char(10) unique not null,
    department_name char(20) not null
  );

6.2 創建教師表

表名:teacher
字段:
teacher_no char(10) 主鍵 -- 教師工號
teacher_name char(10) 非空 -- 教師姓名
teacher_contact char(20) 非空 -- 聯系方式

  create table teacher(
    teacher_no char(10) primary key,
    teacher_name char(10) not null,
    teacher_contact char(20) not null
  );

6.3 創建學生表

表名: student
字段:
student_no char(11) 主鍵 --學號
student_name char(10) 非空 --姓名
student_contact char(20) 非空 --聯系方式
class_no int 外鍵 --引用的是班級表中的班號(class_no)|學生表和班級表中的外鍵

  create table student(
     student_no char(11) primary key,
     student_name char(10) not null,
     student_contact char(20) not null,
     class_no int,
設定約束別名(student_class_fk)指定自身字段(class_no)為外鍵來引用學生表(classes)的字段(class_no)
constraint student_class_fk foreign key(class_no) references classes(class_no) );

6.4 創建課程表

表名: course
字段:
course_no int 自增長 主鍵 --課程號
course_name char(16) 非空 --課程名
up_limit int 默認 60 --人數上限值
description varchar(100) 非空 --描述信息
status char(6) 默認 未審核 --課程狀態默認值(未審核)
teacher_no char(10) 非空 唯一 外鍵 --主講老師|課程表和教師表之間的外鍵

 create table course(
   course_no int auto_increment primary key,
   course_name char(16) not null,
   up_limit int default 60,
   description varchar(100) not null,
   status char(6) default '未審核',
   teacher_no char(10) unique not null,
   constraint course_teacher_fk foreign key(teacher_no) references teacher(teacher_no) 
 ); 

6.5 創建選課表

表名: choose
字段:
choose_no int 自增長 主鍵 --編號
student_no char(11) 非空 外鍵 --學生學號
course_no int 非空 外鍵 --課程號
score tinyint unsigned --成績
choose_time datetime 非空 --選課時間

 create table choose(
   choose_no int auto_increment primary key,
   student_no char(11) not null,
   course_no int not null,
   choose_time datetime not null,
   score tinyint unsigned,
   constraint choose_student_fk foreign key(student_no) references student(student_no),
   constraint choose_course_fk foreign key(course_no) references course(course_no)
 );

6.6多對多的基本模型基本完成

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM