数据库创建表语句(#千锋#)

-- 用户角色表

create table role

(

rid int primary key auto_increment, -- 角色id

rname varchar(20) -- 角色名

);

insert into role(rname) values('管理员');

insert into role(rname) values('教师');

insert into role(rname) values('学生');

-- 用户表:用户和角色存在多对一关系

create table users

(

uid int primary key auto_increment, -- 用户id

uaccount varchar(20) unique, -- 账号,唯一

upwd varchar(20), -- 密码

uimg varchar(50),  -- 头像

role_id int, -- 角色id,外键

foreign key(role_id) references role(rid)

);

insert into users(uaccount,upwd,uimg,role_id) values('admin','123','/EducationSystem/images/user.png',1);

insert into users(uaccount,upwd,uimg,role_id) values('teacher','123','/EducationSystem/images/user.png',2);

insert into users(uaccount,upwd,uimg,role_id) values('student','123','/EducationSystem/images/user.png',3);

-- 教师表:教师和用户存在一对一关系,教师和课程存在一对多关系

create table teacher

(

tid int primary key auto_increment, -- 教师id

tno varchar(20) unique,-- 教师编号,唯一

tname varchar(20), -- 姓名

tsex varchar(10), -- 性别

tage int, -- 年龄

tdname varchar(30), -- 部门名称

tjobtitle varchar(30), -- 职称

tpwd varchar(20), -- 密码

timg  varchar(50), -- 头像

tremark varchar(200), -- 简介

user_account varchar(20), -- 用户账号,外键

foreign key(user_account) references users(uaccount)

);

-- 课程表:课程和教师存在多对一关系

create table course

(

cid int primary key auto_increment, -- 课程id

cno varchar(20) unique, -- 课程编号

cname varchar(50), -- 课程名

ccredit int, -- 学分

csdate date, -- 开课日期

caddr varchar(50), -- 上课地点

ctype varchar(20), -- 课程类型

teacher_no varchar(20), -- 教师编号,外键

foreign key(teacher_no) references teacher(tno)

);

-- 学生表:学生和用户存在一对一关系,学生和课程存在多对多关系

create table student

(

sid int primary key auto_increment, -- 学生id

sno varchar(20) unique, -- 学生学号

sname varchar(20), -- 姓名

ssex varchar(10), -- 性别

sage int, -- 年龄

smajor varchar(30), -- 专业

suniversity varchar(30), -- 学院

smobile varchar(20), -- 手机号

saddr varchar(50), -- 地址

sindate date, -- 入学时间

soutdate date, -- 毕业时间

spwd varchar(20), -- 密码

sclass varchar(20), -- 班级

simg varchar(50), -- 头像

user_account varchar(20), -- 用户账号,外键

foreign key(user_account) references users(uaccount)

);

-- 学生和课程的中间表:选课表

create table selectcourse

(

scid int primary key auto_increment, -- 选课表id

course_no varchar(20), -- 课程编号,外键

student_no varchar(20), -- 学生学号,外键

foreign key(course_no) references course(cno),

foreign key(student_no) references student(sno)

);

-- 成绩表:学生和成绩之间有一对多的关系

create table score

(

scid int primary key auto_increment, -- 成绩id

scgrade double(4,1), -- 分数

student_no varchar(20), -- 学生学号,外键

course_no varchar(20), -- 课程编号,外键

foreign key(student_no) references student(sno),

foreign key(course_no) references course(cno)

);

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • ORACLE自学教程 --create tabletestone ( id number, --序号usernam...
    落叶寂聊阅读 1,151评论 0 0
  • 数据库:存放数据的仓库; 硬盘 运行内存 mysql 现在被oracle收购了 oracle oracle公司 s...
    凤之鸠阅读 974评论 0 0
  • 一、上堂回顾 1.概念​ 数据库管理系统,数据库,表​ SQL的分类:DDL、DML、DQL、DCL2.数据库的使...
    WenErone阅读 435评论 0 0
  • 一. Java基础部分.................................................
    wy_sure阅读 3,854评论 0 11
  • 阴22/28°,体感温度27°,空气良,湿度80%,西南风3级,日出04:59日落19:04 回去午饭时下雨,和带...
    光锋容阅读 227评论 0 0