资源介绍
题目一:学校信息管理系统
一、语言和环境
A、实现语言
SQL
B、环境要求
MySQL 5.5
二、功能要求
为学校信息管理系统建立四个表:
学生信息表:student
字段名 数据类型 说明
sid int(4) 学生编号,主键,自增列
stuName varchar(10) 学生名称,非空
age int(4) 年龄,非空
sex int(1) 学生性别,非空
课程表:course
字段名 数据类型 说明
cid int(4) 课程编号,主键
cName varchar (50) 课程名称,非空
tid int(4) 教师编号,非空
成绩表:score
字段名 数据类型 说明
sid int(4) 学生编号,主键
cid int(4) 课程编号,主键
score int(4) 成绩,非空
教师表:teacher
字段名 数据类型 说明
tid int(4) 教师编号,主键
teaName varchar (50) 教师名称,非空
按下面的要求,编写SQL语句。
1.创建数据库schoolDB。如果数据库schoolDB已存在,那么,先删除再创建。
2.根据表结构,创建4张表。如果该表已存在,则先删除再创建该表。
3.添加student表、course表、score表的主外键约束以及course表和teacher表的主外键关联。
4.查询学过“方芳”老师所教课程的学生的学号、姓名。(假定学生所学的课程均参加了考试)。
5.查询所有课程成绩均小于60分的学生学号和姓名。
6.查询“方芳”老师所教的“数据库”课程成绩排名在第3~6名的学生学号、姓名,并将此记录插入新表tempScore中。(要求使用limit子句)
7.查询有两门以上课程不及格的学生学号及其平均成绩。
8.创建视图student_view,用于查询所有学生的学号、姓名、参加考试课程数、各科总成绩。
题目二:运动会报名系统
一、语言和环境
A、实现语言
Java
B、环境要求
JDK 7.0、MyEclipse 10、MySQL 5.5
二、功能要求
学校即将举办第五届春季运动会,为更方便管理报名信息,现要求开发基于控制台的学校运动会报名系统。具体要求如下:
1.主菜单:显示系统主菜单,每执行完一项功能后菜单循环显示,如图1所示,菜单功能包括:
1) 学生报名
2) 按比赛项目查询
3) 按班级查询
4) 取消报名
5) 退出系统
2.学生报名:输入学生姓名、年龄、班级号、报名项目编号,正确录入以上信息后,显示“报名成功!”,效果如图2所示。
3.按比赛项目查询:提示选择要查询的比赛项目,查询出相关学生信息,包括项目名、姓名、班级、年龄。如图3所示。
4.按班级查询:提示选择要查询的班级,查询出相关学生信息,包括项目名、姓名、班级、年龄。如图4所示。
5.取消报名:提示输入要取消报名的学生姓名,从报名信息表中删除该学生记录。如图5所示,成功后提示“取消报名成功!”
6.退出系统:提示“谢谢使用!”后退出系统,如图6所示。
图1 主菜单
图2 学生报名
图3 按比赛项目查询
图4 按班号查询
图5 取消报名
图6 退出系统
三、类的设计
采用DAO模式开发此系统,需要定义如下类:
1.报名信息实体类(ApplyInfo)
1)编号(applyId)
2)姓名(name)
3)年龄(age)
4)班级(class)
5)比赛项目(game)
2.数据库连接和关闭类(BaseDao)
3.报名信息DAO接口(ApplyInfoDao)
4.报名信息DAO实现类(ApplyInfoDaoImpl)
5.测试类(GameMgr)用于实现整体流程
四、具体要求及推荐实现步骤
1.创建数据库表apply_info,添加测试数据不少于4条,表结构如表1所示。
表1 报名信息表
表名 apply_info 中文表名称 报名信息表
主键 applyId
序号 字段名称 字段说明 类型 长度 属性 备注
1 applyId 报名编号 int 主键 自增列
2 name 姓名 char 10 非空
3 age 年龄 int 4 非空
4 class 班级 varchar 50 非空
5 game 比赛项目 varchar 50 非空
2.创建实体类ApplyInfo,根据业务提供需要的构造方法和setter/getter方法。
3.创建BaseDao类,实现数据库连接和关闭功能。
4.创建DAO接口ApplyInfoDao,定义学生报名,按班级查询,按比赛项目,取消报名的方法。
5.创建DAO实现类ApplyInfoDaoImpl,继承BaseDao类,实现ApplyInfoDao接口,使用JDBC完成相应数据库操作。
6.创建ApplyMgr类,完成在控制台的报名信息操作,启动和运行系统。
五、注意事项
1.请注意代码的书写、命名符合规范,在代码中添加必要的注释。
2.请注意操作数据库时进行必要的异常处理。