教学管理系统数据库ER图及SQL语句.docx
《教学管理系统数据库ER图及SQL语句.docx》由会员分享,可在线阅读,更多相关《教学管理系统数据库ER图及SQL语句.docx(19页珍藏版)》请在冰豆网上搜索。
教学管理系统数据库ER图及SQL语句
教学管理系统
一、系统功能需求
学校教务管理系统是针对学校的大量信息处理工作而开发的管理软件,完成的主要功能如下:
(1)学生基本信息管理:
能够对学生基本信息进行输入、删除、修改。
学生基本信息包括:
学号、姓名、性别、出生日期、入学成绩、所在系号。
(2)系部基本信息管理:
系部的基本信息输入、修改、删除。
系部基本信息包括:
系号、系名称、系的简介。
(3)课程信息管理:
课程信息的输入、修改、删除。
课程信息包括:
课程号、课程名称、任课教师号、学时、学分、上课时间、上课地点、考试时间。
(4)教职工信息管理:
教职工信息的输入、修改、删除。
教职工信息包括:
职工号、姓名、性别、出身年月、所在系号、职称、技术专长。
(5)选课管理:
学号、学生、课程号、课程名称、上课教师姓名、系号每学期所选课程的学分不能超过15分。
学生可以同时选修一门或多门课程。
可以同时为多个学生选修某一门或某几门课程。
可以删除和修改选课信息。
(6)成绩管理可以按课程输入和修改成绩,也可以按学生输入和修改成绩。
(7)信息查询可以按学号、姓名、系号查询学生基本信息。
可以按职工号、姓名、系号查询教职工基本信息。
可以按系号、系名称查询系的基本信息。
可以按课程号、课程名称、上课教师姓名查询课程基本信息。
按学号、课程号、课程名称、上课教师姓名、系号查询学生成绩,内容包括课程基本情况。
若查询涉及多门课程,则按课程分组。
每门课程按总评成绩从高分到低分给出选修该门课程的所有学生的成绩(平时成绩、考试成绩和总评成绩)。
(8)统计报表
a、成绩报表:
内容包括课程基本信息(课程号、课程名称、任课教师号、学时、学分),选课学生名单(学号、姓名、性别),每个学生的平时成绩、考试成绩和总评成绩。
能按课程号、课程名称、教师姓名输出对应课程的成绩报表。
b、能够根据课程、授课教师统计成绩>=90分、>=80分、>=70分、>=60分及不及格学生的人数及比例。
二、任务描述
1、根据需求描述,完成数据概念模型设计,画出E-R图;
2、优化E-R图,给出数据逻辑模型;
3、将逻辑模型转换成物理模型并创建数据库和数据表。
要求数据表能尽量实现数据完整性要求。
4、根据需要,创建适当的索引。
5、为了实现系统功能,使用SQL语句向数据表添加相关数据。
6、写出实现系统管理功能用到的删除、修改操作的SQL语句。
7、写出实现系统需要用到的查询语句。
8、用视图实现成绩报表的生成。
9、为了更好的实现系统,创建合适的存储过程和函数。
(至少各一个)。
10、撰写数据库系统设计报告及项目总结。
11、完成答辩。
期末实训评分标准
序号
评分内容
评分标准
分值
1
E-R图和逻辑设计
创建适当的E-R图和逻辑设计关系
10
2
创建数据库和数据表
创建数据库
2
创建合适的数据表
15
具有适当的主键
5
具有适当的外键和其他约束
5
3
创建索引
创建适当的索引
3
4
添加数据
根据系统需求,添加适当的数据
5
5
修改、删除数据
正确完成数据的修改、删除
5
6
查询
写出系统要求的查询语句
15
7
创建视图
正确创建视图
4
8
存储过程和函数
正确创建存储过程
3
正确创建函数
3
9
设计报告
设计报告内容合理
5
包含个人心得体会
5
10
答辩
根据要求完成答辩
15
总计
100分
USEmarket
GO
CREATETABLE学生基本信息
(
学号INTPRIMARYKEY,
姓名VARCHAR(10)NOTNULL,
性别VARCHAR(50),出生日期INT,入学成绩INT,所在系号INT,
)
GO
USEmarket
GO
CREATETABLE系部基本信息
(
系号INTPRIMARYKEY,
系名称VARCHAR(50)NOTNULL,系的简介VARCHAR(50)
GO
USEmarket
GO
CREATETABLE课程信息
(
课程号INTPRIMARYKEY,
课程名称VARCHAR(50)NOTNULL,任课教师号INT,
学时INT,
学分INT,
上课时间VARCHAR(50),
上课地点VARCHAR(50),
考试时间VARCHAR(50)
)
GO
USEmarket
GO
CREATETABLE教职工信息
(
职工号INTPRIMARYKEY,
教师姓名VARCHAR(10)NOTNULL,性别VARCHAR(50),
出身年月INT,
所在系号INT,
职称VARCHAR(50),
技术专长VARCHAR(50)
)
GO
USEmarket
GO
INSERT学生基本信息(学号,姓名,性别,出生日期,入学成绩,所在系号)
VALUES('','王晓明','男','','278','4')
INSERT学生基本信息
VALUES('','吴小丽','女','','276','4')
INSERT学生基本信息
VALUES('','章明敏','女','','281','4')
INSERT学生基本信息
VALUES('','王孝亚','男','','273','4')
INSERT学生基本信息
VALUES('','李明月','女','','263','4')
INSERT学生基本信息
VALUES('','任心','女','','267','4')
INSERT学生基本信息
VALUES('','吴佳丽','女','','294','4')
INSERT学生基本信息
VALUES('','王丽','女','','287','4')
INSERT学生基本信息
VALUES('','朱明','男','','278','4')
INSERT学生基本信息
VALUES('','章自强','男','','290','4')
GO
USEmarket
GO
INSERT系部基本信息(系号,系名称,系的简介)
VALUES('1','经济贸易学院','经济贸易')
INSERT系部基本信息
VALUES('2','会计经融学院','会计经融')
INSERT系部基本信息
VALUES('3','旅游管理学院','旅游管理')
INSERT系部基本信息
VALUES('4','信息工程学院','信息工程')
INSERT系部基本信息
VALUES('5','商务外语学院','商务外语')
INSERT系部基本信息
VALUES('6','电子工程学院','电子工程')
INSERT系部基本信息
VALUES('7','机电工程学院','机电工程')
INSERT系部基本信息
VALUES('8','艺术设计学院','艺术设计')
GO
USEmarket
GO
INSERT课程信息(课程号,课程名称,任课教师号,学时,学分,上课时间,上课地点,考试时间)
VALUES('1','数学','1','40','2','周一、四','教3-A209','06-29')
INSERT课程信息
INSERT课程信息
VALUES('3','商业应用文写作','3','40','2','
INSERT课程信息
VALUES('4','实用英语','4','40','2','
INSERT课程信息
VALUES('5','影视鉴赏','5','16','2','
INSERT课程信息
VALUES('6','音乐鉴赏','6','16','2','
GO
周一','教3-A408','06-24')
周二、五','教3-C304','06-30')
周一','教3-A408','06-02')
周五','教3-C304','06-06')
USEmarket
GO
INSERT教职工信息(职工号,教师姓名,性别,出身年月,所在系号,职称,技术专长)
VALUES('1','王明','
女','','4','
教师','
数学')
INSERT教职工信息
VALUES('2','李丽','
女','','4','
教师','
体育')
INSERT教职工信息
VALUES('3','徐新','
女','','2','
教师','
语文')
INSERT教职工信息
VALUES('4','王曦','
女','','4','
教师','
英语')
INSERT教职工信息
VALUES('5','王翔','
男','','2','
教师','
影视')
INSERT教职工信息
VALUES('6','李雨','
男','','2','
教师','
音乐')
GO
建立外键
Altertable课程信息
任课教师号)
add
constraintFk_课程信息_教职工信息foreignkey(
REFERENCE教职工信息(职工号)
go
USEmarket
GO
CREATETABLE选课信息
(
学号INTPRIMARYKEY,
教师姓名VARCHAR(10)NOTNULL,课程号INT,
课程名称VARCHAR(10),
平时成绩INT,
考试成绩INT,
总评成绩INT
)
GO
USEmarket
GO
INSERT选课信息(学号,姓名,课程号,课程名称,平时成绩,考试成绩,总评成绩)
INSERT选课信息
VALUES('','吴小丽','5','
INSERT选课信息
VALUES('','章明敏','6','
INSERT选课信息
VALUES('','王孝亚','5','
INSERT选课信息
VALUES('','李明月','5','
INSERT选课信息
VALUES('','任心','6','
INSERT选课信息
VALUES('','吴佳丽','5','
INSERT选课信息
VALUES('','王丽','6','
INSERT选课信息
VALUES('','朱明','6','
INSERT选课信息
VALUES('','章自强','5','
GO
影视鉴赏','50','60','55')
音乐鉴赏','55','65','60')
影视鉴赏','80','80','80')
影视鉴赏','90','90','90')
音乐鉴赏','90','80','85')
影视鉴赏','65','65','65')
音乐鉴赏','55','65','60')
音乐鉴赏','95','95','95')
影视鉴赏','70','80','75')
USEmarket
GO
CREATETABLE数学成绩信息
(
课程号INT,
学号INT,
姓名VARCHAR(10)NOTNULL,
平时成绩INT,
考试成绩INT,
总评成绩INT
)
GO
数学成绩信息
USEmarket
GO
INSERT数学成绩信息(课程号,学号,姓名,平时成绩,考试成绩,总评成绩)
VALUES('1','','王晓明','70','80','75')
INSERT数学成绩信息
VALUES('2','','吴小丽','50','60','55')
INSERT数学成绩信息
VALUES('3','','章明敏','55','65','60')
INSERT数学成绩信息
VALUES('4','','王孝亚','80','80','80')
INSERT数学成绩信息
VALUES('5','','李明月','90','90','90')
INSERT数学成绩信息
VALUES('6','','任心','90','80','85')
INSERT数学成绩信息
VALUES('7','','吴佳丽','65','65','65')
INSERT数学成绩信息
INSERT数学成绩信息
INSERT数学成绩信息
VALUES('10','','章自强','70','80','75')
GO
USEmarket
GO
CREATETABLE体育成绩信息
(
课程号INT,
学号INT,
姓名VARCHAR(10)NOTNULL,
平时成绩INT,
考试成绩INT,
总评成绩INT
)
GO
体育成绩信息
USEmarket
GO
INSERT体育成绩信息(课程号,学号,姓名,平时成绩,考试成绩,总评成绩)
VALUES('1','','王晓明','70','80','75')
INSERT体育成绩信息
VALUES('2','','吴小丽','50','60','55')
INSERT体育成绩信息
INSERT体育成绩信息
INSERT体育成绩信息
VALUES('5','','李明月','90','90','90')
INSERT体育成绩信息
VALUES('6','','任心','90','80','85')
INSERT体育成绩信息
VALUES('7','','吴佳丽','65','65','65')
INSERT体育成绩信息
VALUES('8','','王丽','55','65','60')
INSERT体育成绩信息
VALUES('9','','朱明','95','95','95')
INSERT体育成绩信息
VALUES('10','','章自强','70','80','75')
GO
USEmarket
GO
CREATETABLE商业应用文写作成绩信息(
课程号INT,学号INT,姓名VARCHAR(10)NOTNULL,平时成绩INT,考试成绩INT,总评成绩INT
GO
商业应用文写作成绩信息
USEmarket
GO
INSERT商业应用文写作成绩信息(课程号,学号,姓名,平时成绩,考试成绩,总评成绩)
VALUES('1','','王晓明','70','80','75')
INSERT商业应用文写作成绩信息
VALUES('2','','吴小丽','50','60','55')
INSERT商业应用文写作成绩信息
VALUES('3','','章明敏','55','65','60')
INSERT商业应用文写作成绩信息
VALUES('4','','王孝亚','80','80','80')
INSERT商业应用文写作成绩信息
VALUES('5','','李明月','90','90','90')
INSERT商业应用文写作成绩信息
VALUES('6','','任心','90','80','85')
INSERT商业应用文写作成绩信息
VALUES('7','','吴佳丽','65','65','65')
INSERT商业应用文写作成绩信息
VALUES('8','','王丽','55','65','60')
INSERT商业应用文写作成绩信息
VALUES('9','','朱明','95','95','95')
INSERT商业应用文写作成绩信息
GO
USEmarket
GO
CREATETABLE实用英语信息
(
课程号INT,
学号INT,
姓名VARCHAR(10)NOTNULL,
平时成绩INT,
考试成绩INT,
总评成绩INT
)
GO
实用英语信息
USEmarket
GO
INSERT实用英语信息(课程号,学号,姓名,平时成绩,考试成绩,总评成绩)
VALUES('1','','王晓明','70','80','75')
INSERT实用英语信息
VALUES('2','','吴小丽','50','60','55')
INSERT实用英语信息
VALUES('3','','章明敏','55','65','60')
INSERT实用英语信息
INSERT实用英语信息
VALUES('5','','李明月','90','90','90')
INSERT实用英语信息
VALUES('6','','任心','90','80','85')
INSERT实用英语信息
VALUES('7','','吴佳丽','65','65','65')
INSERT实用英语信息
VALUES('8','','王丽','55','65','60')
INSERT实用英语信息
VALUES('9','','朱明','95','95','95')
INSERT实用英语信息
VALUES('10','','章自强','70','80','75')
GO
修改语句
USEmarket
GO
UPDATE学生基本信息
SET姓名='王晓明',出生日期=''
WHERE学号=
GO
删除语句
USEmarket
GO
DELETE学生基本信息
WHERE学号=
GO
查询
可以按学号、姓名、系号查询学生基本信息。
USEmarket
GO
SELECT学号,姓名,所在系号
FROM学生基本信息
可以按职工号、姓名、系号查询教职工基本信息。
USEmarket
GO
SELECT职工号,教师姓名,所在系号
FROM教职工信息
可以按系号、系名称查询系的基本信息。
USEmarket
GO
SELECT系号,系的简介
FROM系部基本信息
可以按课程号、课程名称、上课教师姓名查询课程基本信息。
SELECTa.课程号,a.课程名称,b.教师姓名
FROM课程信息ASaINNERJOIN教职工信息ASb
ONa.课程号=b.职工号
按学号、课程号、课程名称、上课教师姓名、系号查询学生成绩,内容包括课程基本情况。
若查询涉及多门课程,则按课程分组。
每门课程按总评成绩从高分到低分给出选修该门课程的所有学生的成绩(平时成绩、考试成绩和总评成绩)。
体育
USEmarket
GO
SELECT课程信息.课程号,课程信息.课程名称,教职工信息.姓名,教职工信息.所在系号,体育成绩信息.学号,体育成绩信息.平时成绩,体育成绩信息.考试成绩,体育成绩信息.总评成绩FROM
课程信息INNERJOIN教职工信息
ON课程信息.课程号=教职工信息.职工号
INNERJOIN体育成绩信息
on体育成绩信息.课程号=课程信息.课程号
groupby课程信息.课程号,课程信息.课程名称,教职工信息.姓名,教职工信息.所在系号,体育成绩信息.学号,体育成绩信息.平时成绩,体育成绩信息.考试成绩,体育成绩信息.总评成绩
orderby体育成绩信息.总评成绩desc
数学
USEmarket
GO
SELECT课程信息.课程号,课程信息.课程名称,教职工信息.姓名,教职工信息.所在系号,数学成
绩信息.学号,数学成绩信息.平时成绩,数学成绩信息.考试成绩,数学成绩信息.总评成绩
FROM
课程信息INNERJOIN教职工信息
ON课程信息.课程号=教职工信息.职工号
INNERJOIN数学成绩信息
on数学成绩信息.课程号=课程信息.课程号
groupby课程信息.课程号,课程信息.课程名称,教职工信息.姓名,教职工信息.所在系号,数学成绩信息.学号,数学成绩信息.平时成绩,数学成绩信息.考试成绩,数学成绩信息.总评成绩orderby数学成绩信息.总评成绩desc
商业应用文写作
USEmarket
GO
SELECT课程信息.课程号,课程信息.课程名称,教职工信息.姓名,教职工信息.所在系号,商业应用文写作成绩信息.学号,商业应用文写作成绩信息.平时成绩,商业应用文写作成绩信息.考试成绩,商业应用文写作成绩信息.总评成绩
FROM课程信息INNERJOIN教职工信息ON课程信息.课程号=教职工信息.职工号
INNERJOIN商业应用文写作成绩信息on商业应用文写作成绩信息.课程号=课程信息.课程号
groupby课程信息.课程号,课程信息.课程名称,教职工信息.姓名,教职工信息.所在系号,
商业应用文写作成绩信息.学号,商业应用文写作成绩信息.平时成绩,商业应用文写作成绩信息.考试成绩,商业应用文写作成绩信息.总评成绩orderby商业应用文写作成绩信息.总评成绩desc
实用英语
USEmarket
GO
SELECT课程信息.课程号,课程信息.课程名称,教职工信息.姓名,教职工信息.所在系号,实用英语信息.学号,实用英语信息.平时成绩,实用英语信息.考试成绩,实用英语信息.总评成绩
FROM课程信息INNERJOIN教职工信息ON课程信息.课程号=教职工信息.职工号
INNERJOIN实用英语信息on实用英语信息.课程号=课程信息.课程号
groupby课程信息.课程号,课程信息.课程名称,教职工信息.姓名,教职工信息.所在系号,
实用英语信息.学号,实用英语信息.平时成绩,实用英语信息.考试成绩,实用英语信息.总评成绩
orderby实用英语信息.总评成绩desc
a、成绩报表:
内容包括课程基本信息(课程号、课程名称、任课教师号、学时、学
分),选课学生名单(学号、姓名、性别),每个学生的平时成绩、考试成绩和总评成绩
USEma