数据库课程设计班级事务管理系统.docx

上传人:b****7 文档编号:23339118 上传时间:2023-05-16 格式:DOCX 页数:41 大小:583.79KB
下载 相关 举报
数据库课程设计班级事务管理系统.docx_第1页
第1页 / 共41页
数据库课程设计班级事务管理系统.docx_第2页
第2页 / 共41页
数据库课程设计班级事务管理系统.docx_第3页
第3页 / 共41页
数据库课程设计班级事务管理系统.docx_第4页
第4页 / 共41页
数据库课程设计班级事务管理系统.docx_第5页
第5页 / 共41页
点击查看更多>>
下载资源
资源描述

数据库课程设计班级事务管理系统.docx

《数据库课程设计班级事务管理系统.docx》由会员分享,可在线阅读,更多相关《数据库课程设计班级事务管理系统.docx(41页珍藏版)》请在冰豆网上搜索。

数据库课程设计班级事务管理系统.docx

数据库课程设计班级事务管理系统

1.数据库设计内容

1.1.课程设计任务与要求

1.1.1.任务

班级事务管理系统

问题描述:

班级管理信息系统的任务是收集、存储、管理班级同学的相关信息,以及班级日常管理中的相关信息。

为班级信息公开、增进同学交流了解服务,同时加强班级管理、提高班级管理与服务的效率和质量。

1.1.2.设计要求

①、实现用户登录。

②、实现管理员管理班级事务。

(学生信息、成绩、课程、详细信息的增、删、改、查)

③、实现学生成绩查询。

④、实现个人事务管理。

⑤、实现生活委员班费管理。

1.1.3.运行环境

WindowsXP、SQLServer5.0、Myeclipse6.0、Tomcat5.5.28、IE浏览器、JDK

1.2需求分析

1.2.1.数据需求

班级事务管理系统需要完成功能主要有:

①学生基本信息的输入,包括学号、姓名、担任职务等。

②学生基本信息的添加、查询、修改、删除,包括学生学号、姓名、职务、角色等。

③学生成绩的添加、查询、修改、删除,包括学号、课程号、分数。

④课程的添加、删除,包括课程号、课程名、学分、任课老师。

⑤生活委员对班费的管理,包括班费的收入、支出。

⑥个人对本人事务的管理,包括时间和事件。

1.2.2事物需求

①管理员对学生事务管理部分,要求:

a、可以查询学生基本、详细信息、课程信息以及成绩。

b、可以对学生基本信息、详细信息进行添加、修改及删除操作。

c、可以对课程信息进行添加、删除操作。

d、可以对学生成绩进行添加、删除操作。

②生活委员对班费的管理,要求:

a、可以查询班费收入支出的详细信息。

b、可以对班费信息进行添加、修改、删除操作。

1.2.3关系模式

学生用户表(学号、姓名、密码、担任职务、角色)

课程表(课程号、课程名、学分、任课老师)

成绩表(主键、学号、课程号、成绩)

学生详细信息表(id、学生学号、出生日期、身份证号码、家庭往址、宿舍号、银行卡号)

生活委员事物表(ID、时间、活动地点、活动人数、消费前班费余额、消费金额、消费后班费余额、活动意义、活动结果)

其它管理页面(ID、时间、内容、结果)

1.3概念结构设计

1.3.1.E-R图

1.4.逻辑结构设计

1.4.1表结构

1.4.2数据库设计及完整性约束

学生用户表:

createtableuser

idintauto_incrementprimarykey,

usernamevarchar(10),

userpassvarchar(20),

userjobvarchar(10),

userrolevarchar(10)

课程表:

createtablecourse

idintauto_incrementprimarykey,

cnamevarchar(20),

ccreditint,

cteachervarchar(20)

成绩表:

createtableSc

idintauto_incrementprimarykey,

uidint,

cidint,

sgradevarchar(5)

ALTERTABLEScADDCONSTRAINTfk_Sc_uidFOREIGNKEY(uid)REFERENCESuser(id);

ALTERTABLEScADDCONSTRAINTfk_Sc_cidFOREIGNKEY(cid)REFERENCEScourse(id);

 

学生详细信息表:

createtablestuinfo

idintauto_incrementprimarykey,

stuidint,

stubirthvarchar(20),

stuidentityvarchar(30),

stuaddrvarchar(200),

studormvarchar(20),

stucardvarchar(20)

ALTERTABLEstuinfoADDCONSTRAINTfk_stuinfo_stuidFOREIGNKEY(stuid)REFERENCESuser(id);

生活委员事物表:

createtableshwy

idintauto_incrementprimarykey,

timevarchar(20),

addrvarchar(100),

stunumint,

startmoneydecimal,

expensedecimal,

endmoneydecimal,

actmeaningtext,

actresultvarchar(10)

其它管理页面:

createtableqita(

idintauto_incrementprimarykey,

qtimevarchar(20),

qcontenttext,

qresultvarchar(20)

1.4.3.数据库用户权限管理

该系统设置三种类型的用户

(1)管理员(admin)即系统管理员拥有对学生基本信息、详细信息、成绩、课程的管理权限。

(2)生活委员(shwy)可以对班级班费收入支出的详细信息进行管理;

(3)其他个人(qita)对个人事务事件进行管理。

 

2.应用系统设计

2.1.需求分析

2.1.1数据需求

班级事务管理系统需要完成功能主要有:

①学生基本信息的输入,包括学号、姓名、担任职务等。

②学生基本信息的添加、查询、修改、删除,包括学生学号、姓名、职务、角色等。

③学生成绩的添加、查询、修改、删除,包括学号、课程号、分数。

④课程的添加、删除,包括课程号、课程名、学分、任课老师。

⑤生活委员对班费的管理,包括班费的收入、支出。

⑥个人对本人事务的管理,包括时间和事件。

2.1.2事物需求

①管理员对学生事务管理部分,要求:

a、可以查询学生基本、详细信息、课程信息以及成绩。

b、可以对学生基本信息、详细信息进行添加、修改及删除操作。

c、可以对课程信息进行添加、删除操作。

d、可以对学生成绩进行添加、删除操作。

②生活委员对班费的管理,要求:

a、可以查询班费收入支出的详细信息。

b、可以对班费信息进行添加、修改、删除操作。

2.1.3关系模式

学生用户表(学号、姓名、密码、担任职务、角色)

课程表(课程号、课程名、学分、任课老师)

成绩表(主键、学号、课程号、成绩)

学生详细信息表(id、学生学号、出生日期、身份证号码、家庭往址、宿舍号、银行卡号)

生活委员事物表(ID、时间、活动地点、活动人数、消费前班费余额、消费金额、消费后班费余额、活动意义、活动结果)

其它管理页面(ID、时间、内容、结果)

2.1.5数据字典

为了使各数据流,数据处理过程,存储过程不能反映其中的数据成,数据项目,数据特性,所以用数据字典来对数据流图中的各成份进行具体的定义,为系统的分析,设计及以后的实现提供供有关元素一致性定义和详细的描述:

①数据流字典

数据流名称:

管理员登录(P3)

来源:

管理员

去向:

查询学生基本信息

数据组成:

姓名+密码+登录权限

数据流名称:

学生个人登录

来源:

个人

去向:

查询个人信息

数据组成:

姓名+密码+登录权限

数据流名称:

生活委员登录

来源:

生活委员

去向:

班费管理

数据组成:

姓名+密码+登录权限

数据流名称:

所有学生基本信息查询

来源:

管理员

去向:

查询处理过程

数据组成:

学号|姓名|密码|担任职务|角色

数据流名称:

所有学生详细信息查询

来源:

管理员

去向:

查询处理过程

数据组成:

学生学号|出生日期|身份证号码|家庭往址|宿舍号|银行卡号

数据流名称:

成绩和课程查询

来源:

学生

去向:

查询处理过程

数据组成:

主键|学号|课程号|成绩

数据流名称:

班费管理查询

来源:

生活委员

去向:

查询处理过程(P3)

数据组成:

ID|时间|活动地点|活动人数|消费前班费余额|消费金额|消费后班费余额|活动意义|活动结果

数据流名称:

个人事务查询

来源:

学生

去向:

查询处理过程

数据组成:

ID|时间|内容|结果

 

2.2.概念结构设计

 

2.3.详细设计

2.3.1流程图

 

2.4.运行界面

2.4.1管理员登陆界面

 

2.4.2管理员查询、添加、修改、删除学生基本信息表

 

 

程序代码说明

package.dao;

importjava.io.UnsupportedEncodingException;

importjava.sql.Connection;

importjava.sql.PreparedStatement;

importjava.sql.ResultSet;

importjava.sql.SQLException;

importjava.util.LinkedList;

importjava.util.List;

import.bean.UserBean;

import.util.DBConnection;

publicclassStudentDao{

publicListqueryAllStudent(){

Listlist=newLinkedList();

Connectionconn=DBConnection.getConnection();

try{

PreparedStatementps=conn.prepareStatement

("select*fromuser");

ResultSetrs=ps.executeQuery();

while(rs.next()){

UserBeanstudent=newUserBean();

student.setId(rs.getInt("id"));

student.setUsername(rs.getString("username"));

student.setUserpass(rs.getString("userpass"));

student.setUserjob(rs.getString("userjob"));

student.setUserrole(rs.getString("userrole"));

list.add(student);

}

}catch(SQLExceptione){e.printStackTrace();

}finally{

try{conn.close();

}catch(SQLExceptione){e.printStackTrace();

}

}

returnlist;

}

publicUserBeanqueryById(intid){

Connectionconn=DBConnection.getConnection();

UserBeanstudent=null;

try{PreparedStatementps=conn.prepareStatement("select*fromuserwhereid=?

");

ps.setInt(1,id);

ResultSetrs=ps.executeQuery();

while(rs.next()){

student=newUserBean();

student.setId(rs.getInt("id"));

student.setUsername(rs.getString("username"));

student.setUserpass(rs.getString("userpass"));

student.setUserjob(rs.getString("userjob"));

student.setUserrole(rs.getString("userrole"));

}

}catch(SQLExceptione){e.printStackTrace();

}finally{

try{conn.close();

}catch(SQLExceptione){e.printStackTrace();

}

}

returnstudent;

}

publicintupdateStuInfo(UserBeanstu){

Connectionconn=DBConnection.getConnection();

UserBeanstudent=null;

intflag=0;

try{PreparedStatementps=conn.prepareStatement

("updateusersetusername=?

userpass=?

userjob=?

userrole=?

whereid=?

");

ps.setString(1,stu.getUsername());

ps.setString(2,stu.getUserpass());

ps.setString(3,stu.getUserjob());

ps.setString(4,stu.getUserrole());

ps.setInt(5,stu.getId());

flag=ps.executeUpdate();

}catch(SQLExceptione){

e.printStackTrace();

}finally{

try{

conn.close();

}catch(SQLExceptione){

e.printStackTrace();

}

}

returnflag;

}

publicintdeleteInfo(intid){

Connectionconn=DBConnection.getConnection();

UserBeanlb=null;

intflag=0;

try{

PreparedStatementps=conn.prepareStatement

("deletefromuserwhereid=?

");

ps.setInt(1,id);

flag=ps.executeUpdate();

}catch(SQLExceptione){

e.printStackTrace();

}finally{

try{

conn.close();

}catch(SQLExceptione){

e.printStackTrace();

}

}

returnflag;

}

publicintaddStudentInfo(UserBeanub){

intflag=0;

Connectionconn=DBConnection.getConnection();

PreparedStatementps;

Stringusername=ub.getUsername();

try{

username=newString(username.getBytes("ISO-8859-1"),"UTF-8");

}catch(UnsupportedEncodingExceptione1){

e1.printStackTrace();

}

try{

ps=conn.prepareStatement

("insertintouser

(username,userpass,userjob,userrole)values(?

?

?

?

)");

ps.setString(1,ub.getUsername());

ps.setString(2,ub.getUserpass());

ps.setString(3,ub.getUserjob());

ps.setString(4,ub.getUserrole());

flag=ps.executeUpdate();

conn.close();

}catch(SQLExceptione){

e.printStackTrace();

}

returnflag;

}

}

 

2.4.3.成绩查询、添加、删除

 

程序代码说明:

package.dao;

importjava.io.UnsupportedEncodingException;

importjava.sql.Connection;

importjava.sql.PreparedStatement;

importjava.sql.ResultSet;

importjava.sql.SQLException;

importjava.util.LinkedList;

importjava.util.List;

import.bean.CoursBean;

import.bean.ScBean;

import.bean.UserBean;

import.util.DBConnection;

publicclassScDao{

publicListqueryAllSc(){

Listlist=newLinkedList();

Connectionconn=DBConnection.getConnection();

try{

PreparedStatementps=conn.prepareStatement

("select*fromsc");

ResultSetrs=ps.executeQuery();

while(rs.next()){

ScBeanscb=newScBean();

scb.setId(rs.getInt("id"));

scb.setUid(rs.getInt("uid"));

scb.setCid(rs.getInt("cid"));

scb.setSgrade(rs.getString("sgrade"));

list.add(scb);

}

}catch(SQLExceptione){

e.printStackTrace();

}finally{

try{

conn.close();

}catch(SQLExceptione){

e.printStackTrace();

}

}

returnlist;

}

publicintdeleteScInfo(intid){

Connectionconn=DBConnection.getConnection();

ScBeanlb=null;

intflag=0;

try{

PreparedStatementps=conn.prepareStatement

("deletefromscwhereid=?

;");

ps.setInt(1,id);

flag=ps.executeUpdate();

}catch(SQLExceptione){

e.printStackTrace();

}finally{

try{

conn.close();

}catch(SQLExceptione){

e.printStackTrace();

}

}

returnflag;

}

publicintaddScInfo(ScBeanub){

intflag=0;

Connectionconn=DBConnection.getConnection();

PreparedStatementps;

try{ps=conn.prepareStatement("insertintosc(uid,cid,sgrade)values(?

?

?

)");

ps.setInt(1,ub.getUid());

ps.setInt(2,ub.getCid());

ps.setString(3,ub.getSgrade());

flag=ps.executeUpdate();

conn.close();

}catch(SQLExceptione){

e.printStackTrace();

}

returnflag;

}

}

2.4.4.课程的查询、添加、删除

 

 

程序代码说明:

package.dao;

importjava.sql.Connection;

importjava.sql.PreparedStatement;

importjava.sql.ResultSet;

importjava.sql.SQLException;

importjava.util.LinkedList;

importjava.util.List;

import.bean.CoursBean;

import.bean.ScBean;

import.util.DBConnection;

publicclassCourseDao{

publicListqueryAllCourse(){

Listlist=newLinkedList();

Connectionconn=DBConnection.getConnection();

try{

PreparedStatementps=conn.prepareStatement

("select*fromcourse");

ResultSetrs=ps.executeQuery();

while(rs.next()){

CoursBeanscb=newCoursBean();

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 小学教育 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1