当前位置: 首页 > article >正文

MySQL数据库应用实验报告——实验1 表结构创建

实验1 表结构创建

创建用于大学管理的高校管理数据库,数据库名为GXGL,包含学生的信息,教学单位信 息、专业信息,教职工信息、课程的相关信息以及学生选课信息。数据库GXGL包含下列 六个表:

(1) Students: 学生信息表

(2) Departments:教学院系信息表

(3) major:专业信息表

(4) Courses: 课程信息表

(5) Teacher:教职工人事信息表

(6) SC:选课信息表

其中,表Students结构:学号(id),姓名(name),性别(sex),籍贯(address),生日(birthday),民族(nations),政治面貌(political),所在院系(departments),专业(majors)。

语义说明

● 每个学生都有唯一的学号

● 每个学生只属于一个院系

● 每个学生只能修一个专业.       

● 专业参照major表的专业代码

备注:政治面貌党员、预备党员、群众三种,默认为群众。

其中,表Departments结构:院系全称(Departmentsname),院系简称(Departmentsshortname),学院行政负责人(Departmentsad),学院党政负责人(Departmentspg),联系人(Departmentscontacts)。

语义说明:

● 每个院系都有唯一一的全称、简称

● 每个院系有唯一的行政负责人

● 每个院系有唯一的党政负责人

● 每个院系有唯一的联系人

备注: (1) 院系可以没有简称.

(2)学院行政负责人为正职院长,学院党政负责人为书记,联系人一般为学院办公室主任,三者 都属于高校教职工,都有唯一的工号。 

其中,表major结构:专业代码(majordm),专业名称(majorname),所属院系(departments),专业类型(majortype)。

语义说明:

● 每个专业有唯一 的代码

● 所属院系参照 department表 

备注:备注:专业类型总共有13个,工学、哲学、经济学、法学、教育学、文学、历史学、理学、管理学、农 学、医学、军事学及艺术学学士。

其中,表Course结构:课程名称(Coursename),授课教师(Courseteacher),承担单位(unit),课程属性(Courseattribute),课程学分(CourseCredits)。

语义说明:

● 每门课程可以由不同教师授课

● 每位教师可以讲授不同课程

● 每位教师所讲授的每门课都有唯一的学分

备注: (1) 承担单位指的是开设该课程的;

(2)每位授课教师都有唯一的工号. 

其中,表Teacher结构:教师工号(Teacherid),教师姓名(Teachername),岗位类型(work),职称(workname),所在院系(atDepartments),联系电话(num),参加工作年份(year)。

语义说明 :

● 每位教师有唯 一的工号 

备注: (1) 岗位类型有专业技术岗位、管理岗位和工勤技能岗位三种类别,职称有初级、中级、副高级、 高级四种:

(2)一般学校行政管理人员也属于教职工,但是所在院系一项可以不填。

其中,表SC结构:学号(SCid),课程名称(Coursename),授课教师(Teachername),学生成绩(scgrades)。

语义说明:

● 每个学生所选 的某位老师的 课程都有唯一 的成绩

实验步骤:

1.打开MySQL客户端,输入用户名和密码登录

2. 创建数据库gxgl

3.选定要使用的数据库: use gxgl;

5.在gxgl数据库中依次创建表

代码如下:

表1:

create table Students
(id char(6) not null primary key,
name char(10) not null,
sex enum('男','女') not null,
address varchar(20) not null,
birthday date not null,
nations varchar(6) not null,
political enum('群众','党员','预备党员') default '群众',
departments char(15) not null,
marjors char(15) not null,
foreign key (marjors) references major(majordm));

表2:

create table Departments
(Departmentsname varchar(10)not null,
Departmentsshortname char(8),
Departmentsad char(10) not null ,
Departmentspg char(10) not null ,
Departmentscontacts char(10)not null ,
primary key(Departmentsname,Departmentsad,Departmentspg,Departmentscontacts) ,
foreign key (Departmentscontacts) references Teacher(Teacherid));

表3:
create table major
(majordm char(15) not null primary key,
majorname char (15) not null ,
departments char(15) not null,
majortype enum('工学','哲学','经济学','法学','教育学','文学','历史学','理学','管理学','农学','医学','军事学','艺术学学士'),
foreign key (departments) references Departments(Departmentsname));

表4:

create table  Course
( Coursename char(15) not null,
Courseteacher char(15) not null,
unit varchar(10) not null,
Courseattribute char (10)not null,
CourseCredits char(15) not null primary key ,
foreign key (CourseCredits ) references Teacher(Teacherid));

表5:

create table Teacher
(Teacherid char(15) not null primary key,
Teachername char(15)not null,
work enum('专业技术岗位','管理岗位','工勤技能岗位') ,
workname enum('初级','中级','副高级','高级'),
atDepartments varchar(10) ,
num char(11) not null,
year char(10));

表6:
create table SC
(SCid char(10) not null ,
Coursename char(15) not null,
Teachername char(15)not null,
scgrades char(3) not null,
unique key(SCid,scgrades));


http://www.kler.cn/a/234036.html

相关文章:

  • asp.net core webapi项目中 在生产环境中 进不去swagger
  • stm32定时器输出比较----驱动步进电机
  • SharpDX 从入门到精通:全面学习指南
  • Rasa框架的优点和缺点
  • 餐饮业的数字化转型:JSP订餐管理系统的设计与开发
  • springboot481基于springboot社区老人健康信息管理系统(论文+源码)_kaic
  • 疑似针对安全研究人员的窃密与勒索
  • Element-ui date-picker组件报错 date.getHours is not a function
  • Lua: 一门轻量级、高效的脚本语言
  • HiveSQL——借助聚合函数与case when行转列
  • 【Java】案例:检测MySQL是否存在某数据库,没有则创建
  • DC-8靶机渗透详细流程
  • 怎么用postman调用webservice(反推SoapUI)
  • Ubuntu上开启SFTP服务教程
  • 软件安全测试报告如何编写?权威的安全测试报告如何获取?
  • Hive-架构与设计
  • CNN应用Keras Tuner寻找最佳Hidden Layers层数和神经元数量
  • vue3跨组件(多组件)通信:事件总线【Event Bus】
  • 修改GI文件的权限
  • 双活工作关于nacos注册中心的数据迁移
  • C#系列-C#访问MongoDB+redis+kafka(7)
  • Avalonia学习(二十三)-大屏
  • 方格定位2_题解
  • Qt安装配置教程windows版(包括:Qt5.8.0版本,Qt5.12,Qt5.14版本下载安装教程)(亲测可行)
  • STM32 FSMC (Flexible static memory controller) 灵活静态内存控制器介绍
  • Android java基础_类的继承