文档库 最新最全的文档下载
当前位置:文档库 › 教务管理系统(mysql数据库)

教务管理系统(mysql数据库)

201 5 至201 6第二学期期末考试

课程:MySQL数据库应用技术

题目:教务管理系统

类别:论文□设计□创业实践□实验报告□调研报告□其他□院系:计算机与信息工程系

专业班级:信息管理与信息系统

学号:14064401501406440151 1406440157

学生姓名:阮班鹏宋耀张雅晴

任课教师:徐彩云

完成时间: 2016年6月16日

教务处制

二○一五年九月

数据库名称

教务管理系统

1.数据库简介

这是一个简单的教务管理系统,主要分为六大块:学生信息管理、教师信息管理、选课信息管理、授课信息管理、班级信息管理、成绩信息管理。

通过对数据库的增、删、改、查询等操作,获得自己所需要的信息,完成日常的教学活动。

2.数据库设计:

3.数据库查询

①要求

代码

截图

4.函数

5.视图

6.存储过程

7.触发器

Mysql数据库技术项目要求

一、每班学生以个人或小组(2-5名学生)形式共同完成数据库的创建。

(1)小组每一个成员负责创建一张数据表,个人完成时数据库里至少需要三张表。并添加5条测试记录。要求为每张数据表设置

主键,选择合适的数据类型,如与其他数据表相关联需要设置

外键约束,默认约束。

(2)组长负责写数据库简介,主要包括数据库的设计背景,功能介绍,要求不少于200字。以及组员的任务分配!

二、小组成员完成任务时,需要制作一份ppt,格式不限,内容包括

自己编写的代码以及调试的结果截图。要求在2016年6月17

日前必须上交(电子版和纸质版(PPT打印或word文档打印)每个小组团队共用一个数据库。基于数据库小组成员都必须完成以下内容:

(1)数据查询

①简单的查询select ……from ……where

②模糊查询like ……

③多表连接查询join ……on……

④高级查询

select 聚集函数from ……(max avg…

where ……group by ……having ……

⑤子查询>= ><= = in >=all =any (2)函数

①自定义一个函数,要基于数据表并调用该函数。

②自定义一个函数,要求函数体中包含其中一种流程控制语

句,

(3)视图

创建视图,并查看视图

(4)存储过程

①自定义不带参数的存储过程,并调用。

②自定义带输入参数的存储过程,完成调用。

③自定义带输入、输出参数的存储过程,完成调用。

(5)触发器

①创建更新触发器,实现数据的级联更新。

②创建删除触发器,实现数据的级联删除。

数据库老师:徐彩云

2016.5.7

代码实现

#字符集、字符序的查看、设置

setcharacter_set_client = gbk;

setcharacter_set_connection = gbk;

setcharacter_set_database = gbk;

setcharacter_set_results = gbk;

setcharacter_set_server = gbk;

setcollation_connection = gbk_chinese_ci ;

setcollation_database = gbk_chinese_ci ;

setcollation_server = gbk_chinese_ci ;

第一个字符集设置不符合本题故不用

#字符集、字符序的查看、设置

setcharacter_set_client = utf8;

setcharacter_set_connection = utf8;

setcharacter_set_database = utf8;

setcharacter_set_results = utf8;

setcharacter_set_server = utf8;

setcollation_connection = utf8_general_ci ;

setcollation_database = utf8_general_ci ;

setcollation_server = utf8_general_ci ;

#创建数据库

create database education;

use education;

#创建表

teacher_name char(100) not null,

teacher_sexenum('男','女'),

teacher_age char(10),

teacher_workdatetime not null,

teacher_aaenum('党员','团员','群众'),

teacher_bbenum('高等专科','大学本科','硕士研究生','博士研究生'), teacher_ccenum('助教','讲师','副教授','教授'),

teacher_ddenum('计信','数学','体育','外国语','物理'),

teacher_tel char(50))engine=InnoDB default charset=gbk;

#创建表

create table school(school_nointauto_increment primary key, school_name char(50) not null,

teacher_noint not null,

teacher_name char(10) not null,

school_aa char(20) not null,

school_bb char(20) not null,

school_cc char(20) not null,

school_dd char(20) not null,

school_eeenum('开卷','闭卷','上机')

)engine=InnoDB default charset=gbk;

#创建表

create table grade(grade_IDintauto_increment primary key,

student_noint,

student_name char(20) not null,

course_noint not null,

course_name char(20) not null,

teacher_noint not null,

teacher_name char(20) not null,

grade_aaint not null

)engine=InnoDB default charset=gbk;

#创建表

create table course(course_nointauto_increment primary key, course_name char(30) not null,

course_aaenum('文科','理科','公共'),

course_bbenum('必修','选修'),

course_cc char(10),

course_dd char(10)

)engine=InnoDB default charset=gbk;

#创建表

student_name char(20) not null,

student_sexenum('男','女'),

student_agevarchar(10),

student_birthdaydatetime not null,

student_schooldatetime not null,

student_aa char(1) not null,

student_bb char(50) not null,

student_cc char(50) not null,

student_dd char(50) not null,

student_ee text,

student_ff char(10) not null

)engine=InnoDB default charset=gbk;

#创建表

create table classes(class_nointauto_increment primary key,

class_name char(20) not null,

class_aaint,

class_bb char(10)

)engine=InnoDB default charset=gbk;

#插入数据

insert into teacher values(001,'吉格斯','男','32','2012-7-30','党员','大学本科','讲师','计信','12345678980');

insert into teacher values(002,'维克多','男','28','2010-11-24','群众','硕士研究生','副教授','数学','46547576588');

insert into teacher values(003,'阿狸','女','30','2014-9-1','党员','硕士研究生','讲师','体育','65768768799');

insert into teacher values(004,'沃利贝尔','女','38','2015-10-17','群众','硕士研究生','讲师','计信','53565476767');

insert into teacher values(005,'菲兹','男','40','2013-8-23','团员','大学本科','讲师','计信','54634657689');

insert into teacher values(006,'特朗德尔','男','36','2012-9-18','党员','大学本科','讲师','数学','34655767879');

#插入数据

insert into school values(01,'第二次世界大战简史',001,'吉格斯','第二周','信管班','16','东1301','开卷');

insert into school values(02,'C++程序语言设计',002,'维克多','第一周','信管班','18','8503','闭卷');

insert into school values(03,'大学体育',003,'阿狸','第四周','体育班','17','体育场','开卷'); insert into school values(04,'概率论与数理统计',011,'兰博','第一周','信管班','18','8504','闭卷'); insert into school values(05,'Photoshop CS5基础',012,'薇恩','第二周','信管班','16','西1410','上机');

insert into school values(06,'Access数据库技术与应用',016,'阿木木','第二周','信管班','18','8511','上机');

#插入数据

insert into grade values(1,1406440101,'俄洛伊',01,'第二次世界大战简史',001,'吉格斯',86); insert into grade values(2,1406440102,'千珏',02,'C++程序设计教程',002,'维克多',85);

insert into grade values(3,1406440201,'德莱文',05,'Photoshop CS5基础',012,'薇恩',82);

insert into grade values(4,1406440202,'德莱厄斯',04,'概率论与数理统计',011,'兰博',89); insert into grade values(5,1406440301,'墨菲特',02,'C++程序设计教程',002,'维克多',94);

insert into grade values(6,1406440302,'希维尔',03,'大学体育',003,'阿狸',77);

#插入数据

insert into course values(01,'第二次世界大战简史','文科','选修','16','1');

insert into course values(02,'C++程序语言设计','理科','必修','16','4');

insert into course values(03,'大学体育','公共','必修','18','2');

insert into course values(04,'概率论与数理统计','理科','必修','18','2');

insert into course values(05,'Photoshop CS5基础','理科','必修','18','4');

insert into course values(06,'Access数据库技术与应用','理科','必修','18','4');

#插入数据

insert into student values(1406440101,'俄洛伊','女','21','1995-12-18','2014-9-3','否','189********','湖北黄冈','420626************','说教无益。折断的骨头是更好的课本。','一班');

insert into student values(1406440102,'千珏','男','20','1996-12-19','2014-9-3','否','189********','江苏南通','4201111996121973747','再跟我说一次,小羔羊,哪些东西是我们要拿走的?','一班');

insert into student values(1406440201,'德莱文','男','21','1995-10-19','2014-9-3','否','159********','山西高平','420626************','我的斧子无可挑剔','二班');

insert into student values(1406440202,'德莱厄斯','男','21','1995-8-21','2014-9-3','否','137********','湖北武汉','420111************','团结一致的诺克萨斯能够掌控整个世界','二班');

insert into student values(1406440301,'墨菲特','男','19','1997-5-15','2014-9-3','否','189********','湖北黄冈','420111************','曾经有一个完全和谐的世界,在那里,一切都是这个整个世界的一部分。巨石是一切事物的本原,他们的外来居民则是一个个独立的部分。墨菲特一直在使用自己全部的潜能来斗争以证明自己是这个世界的一部分,一个高贵的寻求这个世界完美秩序的战士','三班');

insert into student values(1406440302,'希维尔','女','19','1997-12-19','2014-9-3','否','189********','江苏南通','420112************','希维尔用一次又一次的胜利证实了她无愧于"战争女神"的称号——贾克斯。','三班');

#插入数据

insert into classes values(01,'信息管理与信息系统',61,'提莫');

insert into classes values(02,'计算机科学与技术',55,'艾希');

insert into classes values(03,'园林艺术',34,'艾克');

insert into classes values(04,'食品安全',54,'基兰');

insert into classes values(05,'网络工程',45,'盖伦');

insert into classes values(06,'机械制作',78,'阿卡丽');

表:

(一)简单的查询select ……from ……where

(二)模糊查询like ……例:查询所有姓德的学生信息。

(三)多表连接查询join ……on……

例:从学生表和课程表中查询选了课的学生姓名。

(四)高级查询select 聚集函数from ……where ……group by ……having ……

查询平均分大于85分以上的学生成绩

查询学生表前四列的学生信息

(五)子查询>= ><= = in >=all =any

查询成绩及格的学生的姓名,课程名,教师姓名和成绩

函数

自定义一个函数,要基于数据表并调用该函数。

例:根据学生学号返回学生姓名。

结果:

自定义一个函数,要求函数体中包含其中一种流程控制语句。

例:根据学生学号或者教师编号返回他们的姓名信息。

视图

创建视图,并查看视图

存储过程

自定义不带参数的存储过程,并调用。

自定义带输入参数的存储过程,完成调用。

自定义带输入、输出参数的存储过程,完成调用。

触发器

创建更新触发器,实现数据的级联更新例:学习选课后,选课表中已选人数减一

相关文档
相关文档 最新文档