办公室日常信息管理系统数据库课程设计报告统_第1页
办公室日常信息管理系统数据库课程设计报告统_第2页
办公室日常信息管理系统数据库课程设计报告统_第3页
办公室日常信息管理系统数据库课程设计报告统_第4页
办公室日常信息管理系统数据库课程设计报告统_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

办公室日常信息管理系统1.需求分析:1.1业务流程分析:系统管理员的功能包括如下几个方面:文件信息管理、考勤信息管理、会议记录管理、通知公告管理办公管理系统的数据库功能主要体现在对各种信息的提供、保存、更新和查询的操作上,包括通知公告信息,文件信息。文件信息:文件编号,文件名称,文件类型,存储位置考勤信息:员工编号,时间,姓名,性别,出勤情况会议记录:会议编号,会议时间,参会人,记录人,会议内容通知公告:公告编号,内容,通知人,公告时间用户管理:用户以合法身份登入系统后,管理员可以进行系统用户的添加,密码的修改操作。文件信息管理:办公室管理员可以在文件信息管理模块对办公室线路信息进行管理。管理员首先建立办公室文件信息数据库,输入原始的文件信息,当有新的文件需要添加或者需要对已有的文件信息进行修改,删除的时候,管理员就可以进行相应的操作。管理员也可以通过本模块查询到所有需要查询的文件的详细信息。考勤信息管理:管理员可以在考勤信息管理模块实现对考勤信息的管理。管理员首先应该建立考勤信息数据库,输入原始的数据信息,当有新的考勤信息的时候或者管理员需要修改某个考勤的相关信息以及想要删除某个考勤信息的时候,就可以完成相应的操作。管理员也可以在整个数据库中查寻相关考勤信息。会议记录管理:管理员可以在会议记录管理模块实现对会议记录信息的管理。管理员根据相应的会议记录来设置相应的会议记录详细信息。当有新的会议记录添加的时候,要把相应的会议记录信息添加到数据库中,管理员还可以对某条会议记录信息进行修改,删除和查询操作。通知公告管理:管理员可以在通知公告管理模块实现对通知公告信息的管理。管理员根据相应的通知公告来设置相应的通知公告详细信息。当有新的通知公告添加的时候,要把相应的通知公告信息添加到数据库中,管理员还可以对某条通知公告信息进行修改,删除和查询操作。1.2 功能分析:程序分为登陆界面,选择界面,文件信息界面,考勤信息界面,会议记录信息,通知公告信息用户注册界面这几个主体界面。使用时应先知道管理员帐号和密码,登陆进入系统主菜单界面,里面包括文件信息,考勤信息,会议记录信息,通知公告,用户注册,退出程序菜单选项。需要特别说明的是,当对数据进行操作时,在查询框内输入提示数据内容,对话框的表中和提示栏中都会出现所查询的数据,我们可以在提示栏中对数据进行删除和修改操作。 图1:办公室日常管理系统功能模块图1.3 数据流图和数据字典1.3.1 数据流图数据流图就是从数据的角度描述系统的组成及组成之间的联系,将业务工作流程以一种明确而又易于理解的形式表示出来。数据流图有四个基本构成成分:(1 数据流:即流动的数据,代表信息流过的通道。用带箭头的直线表示,直线上方表明数据流的名称,箭头代表数据流流动方向。(2 加工或处理:处理是对进入的数据流进行特定加工的过程,数据流被处理后将产生新的数据流。用圆圈表示,圆圈内注明处理的名称。(3 文件或数据存储:数据流图中的文件代表一种数据的暂存场所,可对其进行存取操作。用一侧带有双线的方框表示,并在其内注明文件或数据存储的名称。(4 外部实体:用以说明数据的来源和归宿,即表示数据的原点和终点。用方框表示,并在其内注明相应的名称。 图2:办公室日常管理系统流图1.3.2数据字典数据字典表达了数据和处理过程的关系。在SA方法中,处理过程的处理活动常常借助于判定表或判定树来描述。系统中的数据则借助数据字典来描述。数据字典是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果,在数据库设计中占有很重要的地位。数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程、外部项等六个部分。文件信息表属性名列名数据类型主键是否允许空文件编号 WNo int 是否文件名称 WName char 否文件类型 WType char 否存储位置 WPlace char 否考勤信息表属性名列名数据类型主键是否空员工编号 YNo int 是否Char 否姓名 YName性别 Sex char 否时间 YTime char 否出勤情况 YC char 否会议记录表属性名列名数据类型主键是否空会议编号 MNo int 是否会议时间 MTime char 否会议内容 MContent char 否参会人 MPeople char 否char 否记录人 MRecorder公告通知表属性名列名数据类型主键是否空公告编号 GNo int 是否公告内容 GContent char 否公告时间 GTime Char 否通知人 GPeople char 否2.概念结构设计概念结构是各种数据模型的共同基础,它比数据模型更独立于机器、更抽象,从而更加稳定。描述概念模型的有力工具是E-R图。由于E-R图提供了人们对数据模型的描述,它即标准、规范,又直观、具体,从而使得E-R图成为应用最广泛的数据库概念设计工具。 E-R图源程序import java.sql.*;import java.io.*;public class OApublic static void wj(System.out.println(文件编号+t文件名称+t文件类型+t存储位置;public static void kq(System.out.println(员工编号+姓名+t性别+tt时间+tt出勤情况;public static void gg(System.out.println(公告编号+t公告内容+t公告时间+t通知人;public static void hy(System.out.println(会议编号+会议内容+t会议时间+t参会人+tt记录人;public static void main(StringargstryClass.forName(sun.jdbc.odbc.JdbcOdbcDriver;catch(Exception eSystem.out.println(JDBC-ODBC driver failed to load.;return;tryConnection con = DriverManager.getConnection(jdbc:odbc:OA, sa, ;Statement stmt = con.createStatement(;int z=1;while(z!=0System.out.println(1.查询2.插入3.更新4.删除;System.out.println(请选择:;int x=0;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;x=Integer.parseInt(br.readLine(;catch(IOException exif(x=5 z=0;if(x=1System.out.println(1.文件信息查询2.考勤信息查询3.公告通知查询4.会议记录查询;System.out.println(请选择:;int i=0;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;i=Integer.parseInt(br.readLine(;catch(IOException exif(i=1ResultSet rs=stmt.executeQuery(select WNo,WName,WType,WPlace from wj;wj(;while(rs.next(int a=rs.getInt(WNo;String b=rs.getString(WName;String c=rs.getString(WType;String d=rs.getString(WPlace;System.out.println(a+tt+b+c+d;if(i=2ResultSet rs=stmt.executeQuery(select YNo,YName,Sex,YTime,YC from kq;kq(;while(rs.next(int a=rs.getInt(YNo;String b=rs.getString(YName;String c=rs.getString(Sex;String d=rs.getString(YTime;String e=rs.getString(YC;System.out.println(a+t+b+c+d+e;if(i=3ResultSet rs=stmt.executeQuery(select GNo,GContent,GTime,GPeople from gg;gg(;while(rs.next(int a=rs.getInt(GNo;String b=rs.getString(GContent;String c=rs.getString(GTime;String d=rs.getString(GPeople;System.out.println(a+tt+b+c+d;if(i=4ResultSet rs=stmt.executeQuery(select MNo,MTime,MContent,MPeople,MRecorder from hy;hy(;while(rs.next(int a=rs.getInt(MNo;String b=rs.getString(MTime;String c=rs.getString(MContent;String d=rs.getString(MPeople;String e=rs.getString(MRecorder;System.out.println(a+t+b+c+d+e;if(x=2System.out.println(1.文件信息插入 2.考勤信息插入3会议记录插入4.公告通知插入;System.out.println(请选择:;int m=0;tryBufferedReader br=new BufferedReader(newInputStreamReader(System.in;m=Integer.parseInt(br.readLine(;catch(IOException exif(m=1String c1=,c2=,c3=,c4=;/PreparedStatementpstmt1=con.prepareStatement(select * from Communication where Uname=?;/pstmt1.setString(1,c1;/ResultSet rs2=pstmt1.executeQuery(;System.out.println(输入你要插入的文件编号:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;c1=br.readLine(;catch(IOException exSystem.out.println(c1=+c1;System.out.println(输入你要插入的文件名称:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;c2=br.readLine(;catch(IOException exSystem.out.println(c2=+c2;System.out.println(输入你要插入的文件种类:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;c3=br.readLine(;catch(IOException exSystem.out.println(c3=+c3;System.out.println(输入你要插入的存储位置:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;c4=br.readLine(;catch(IOException exSystem.out.println(c4=+c4;PreparedStatement pstmt2=con.prepareStatement(insert into wj values(?,?,?,?;pstmt2.setString(1,c1;pstmt2.setString(2,c2;pstmt2.setString(3,c3;pstmt2.setString(4,c4;pstmt2.executeUpdate(;System.out.println(插入成功!;pstmt2.close(;/pstmt1.close(;/rs2.close(;if(m=2String c1=,c2=,c3=,c4=,c5=;/PreparedStatementpstmt1=con.prepareStatement(select * from Memo where Uname=?;/pstmt1.setString(1,c1;/ResultSet rs2=pstmt1.executeQuery(;System.out.println(输入你要插入的员工编号:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;c1=br.readLine(;catch(IOException exSystem.out.println(c1=+c1;System.out.println(输入你要插入的姓名:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;c2=br.readLine(;catch(IOException exSystem.out.println(c2=+c2;System.out.println(输入你要插入的性别:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;c3=br.readLine(;catch(IOException exSystem.out.println(c3=+c3;/ResultSet rs2=pstmt1.executeQuery(;System.out.println(输入你要插入的时间:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;c4=br.readLine(;catch(IOException exSystem.out.println(c4=+c4;System.out.println(输入你要插入的出勤情况:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;c5=br.readLine(;catch(IOException exSystem.out.println(c5=+c5;PreparedStatementpstmt2=con.prepareStatement(insert into kq values(?,?,?,?,?;pstmt2.setString(1,c1;pstmt2.setString(2,c2;pstmt2.setString(3,c3;pstmt2.setString(4,c4;pstmt2.setString(5,c5;pstmt2.executeUpdate(;System.out.println(插入成功!;pstmt2.close(;/pstmt1.close(;/rs2.close(;if(m=3String c1=,c2=,c3=,c4=,c5=;/PreparedStatementpstmt1=con.prepareStatement(select * from Diary where Uname=?;/pstmt1.setString(1,c1;/ResultSet rs2=pstmt1.executeQuery(;System.out.println(输入你要插入的会议编号:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;c1=br.readLine(;catch(IOException exSystem.out.println(c1=+c1;System.out.println(输入你要插入的会议时间:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;c2=br.readLine(;catch(IOException exSystem.out.println(c2=+c2;System.out.println(输入你要插入的会议内容:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;c3=br.readLine(;catch(IOException exSystem.out.println(c3=+c3;System.out.println(输入你要插入的参会人:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;c4=br.readLine(;catch(IOException exSystem.out.println(c4=+c4;System.out.println(输入你要插入的记录人:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;c5=br.readLine(;catch(IOException exSystem.out.println(c5=+c5;PreparedStatementpstmt2=con.prepareStatement(insert into hy values(?,?,?,?,?;pstmt2.setString(1,c1;pstmt2.setString(2,c2;pstmt2.setString(3,c3;pstmt2.setString(4,c4;pstmt2.setString(5,c5;pstmt2.executeUpdate(;System.out.println(插入成功!;pstmt2.close(;/pstmt1.close(;/rs2.close(;if(m=4String c1=,c2=,c3=,c4=;/PreparedStatementpstmt1=con.prepareStatement(select * from Finance where Uname=?;/pstmt1.setString(1,c1;/ResultSet rs2=pstmt1.executeQuery(;System.out.println(输入你要插入的公告编号:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;c1=br.readLine(;catch(IOException exSystem.out.println(c1=+c1;System.out.println(输入你要插入的公告内容:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;c2=br.readLine(;catch(IOException exSystem.out.println(c2=+c2;System.out.println(输入你要插入的公告时间:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;c3=br.readLine(;catch(IOException exSystem.out.println(c3=+c3;System.out.println(输入你要插入的通知人:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;c4=br.readLine(;catch(IOException exSystem.out.println(c4=+c4;PreparedStatementpstmt2=con.prepareStatement(insert into gg values(?,?,?,?;pstmt2.setString(1,c1;pstmt2.setString(2,c2;pstmt2.setString(3,c3;pstmt2.setString(4,c4;pstmt2.executeUpdate(;pstmt2.close(;System.out.println(插入成功!;/pstmt1.close(;/rs2.close(;if(x=3System.out.println(1.文件信息修改2.考勤信息修改3. 会议记录修改4.公告通知修改;System.out.println(请选择:;int m=0;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m=Integer.parseInt(br.readLine(;catch(IOException exif(m=1String m11=;String m13=;int m12=0;System.out.println(选择你要修改文件的编号:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m11=br.readLine(;catch(IOException exPreparedStatementpstmt31=con.prepareStatement(select * from wj where WNo=?;pstmt31.setString(1,m11;ResultSet rs3=pstmt31.executeQuery(;if(rs3.next(System.out.println(输入你要修改的项:1.文件名称2.文件种类3.存储位置;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m12=Integer.parseInt(br.readLine(;catch(IOException exif(m12=1System.out.println( 输入你修改后的值:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m13=br.readLine(;catch(IOException expstmt31.close(;PreparedStatementpstmt3=con.prepareStatement(Update wj set WName=? where WNo=?;pstmt3.setString(1,m13;pstmt3.setString(2,m11;pstmt3.executeUpdate(;System.out.println(修改成功!;if(m12=2System.out.println( 输入你修改后的值:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m13=br.readLine(;catch(IOException expstmt31.close(;PreparedStatementpstmt3=con.prepareStatement(Update wj set WType=? where WNo=?;pstmt3.setString(1,m13;/pstmt3.setint(2,m11;pstmt3.setString(2,m11;pstmt3.executeUpdate(;System.out.println(修改成功!;rs3.close(;/pstmt3.close(;if(m12=3System.out.println( 输入你修改后的值:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m13=br.readLine(;catch(IOException expstmt31.close(;PreparedStatementpstmt3=con.prepareStatement(Update wj set WPlace=? where WNo=?;pstmt3.setString(1,m13;/pstmt3.setint(2,m11;pstmt3.setString(2,m11;pstmt3.executeUpdate(;System.out.println(修改成功!;rs3.close(;/pstmt3.close(;elseSystem.out.println(你要更改的项不存在!;if(m=2String m11=;String m13=;int m12=0;System.out.println(选择你要修改员工编号:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m11=br.readLine(;catch(IOException exPreparedStatementpstmt31=con.prepareStatement(select * from kq where YNo=?;pstmt31.setString(1,m11;ResultSet rs3=pstmt31.executeQuery(;if(rs3.next(System.out.println(输入你要修改的项:1.员工姓名2.性别3.时间4.出勤情况;tryBufferedReader br=new BufferedReader(newInputStreamReader(System.in;m12=Integer.parseInt(br.readLine(;catch(IOException exif(m12=1System.out.println( 输入你修改后的值:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m13=br.readLine(;catch(IOException expstmt31.close(;PreparedStatementpstmt3=con.prepareStatement(Update kq set YName=? where YNo=?;pstmt3.setString(1,m13;pstmt3.setString(2,m11;pstmt3.executeUpdate(;System.out.println(修改成功!;if(m12=2System.out.println( 输入你修改后的值:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m13=br.readLine(;catch(IOException expstmt31.close(;PreparedStatementpstmt3=con.prepareStatement(Update kq set Sex=? where YNo=?;pstmt3.setString(1,m13;/pstmt3.setint(2,m11;pstmt3.setString(2,m11;pstmt3.executeUpdate(;System.out.println(修改成功!;rs3.close(;/pstmt3.close(;if(m12=3System.out.println( 输入你修改后的值:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m13=br.readLine(;catch(IOException expstmt31.close(;PreparedStatementpstmt3=con.prepareStatement(Update kq set YTime=? where YNo=?;pstmt3.setString(1,m13;/pstmt3.setint(2,m11;pstmt3.setString(2,m11;pstmt3.executeUpdate(;System.out.println(修改成功!;rs3.close(;if(m12=4System.out.println( 输入你修改后的值:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m13=br.readLine(;catch(IOException expstmt31.close(;PreparedStatementpstmt3=con.prepareStatement(Update kq set YC=? where YNo=?;pstmt3.setString(1,m13;/pstmt3.setint(2,m11;pstmt3.setString(2,m11;pstmt3.executeUpdate(;System.out.println(修改成功!;rs3.close(;elseSystem.out.println(你要更改的项不存在!;if(m=3String m11=;String m13=;int m12=0;System.out.println(选择你要修改会议编号:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m11=br.readLine(;catch(IOException exPreparedStatementpstmt31=con.prepareStatement(select * from hy where MNo=?;pstmt31.setString(1,m11;ResultSet rs3=pstmt31.executeQuery(;if(rs3.next(System.out.println(输入你要修改的项:1.会议时间2.会议内容3.参会人4.记录人;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m12=Integer.parseInt(br.readLine(;catch(IOException exif(m12=1System.out.println( 输入你修改后的值:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m13=br.readLine(;catch(IOException expstmt31.close(;PreparedStatementpstmt3=con.prepareStatement(Update hy set MTime=? where MNo=?;pstmt3.setString(1,m13;pstmt3.setString(2,m11;pstmt3.executeUpdate(;System.out.println(修改成功!;if(m12=2System.out.println( 输入你修改后的值:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m13=br.readLine(;catch(IOException expstmt31.close(;PreparedStatementpstmt3=con.prepareStatement(Update hy set MContent=? where MNo=?;pstmt3.setString(1,m13;/pstmt3.setint(2,m11;pstmt3.setString(2,m11;pstmt3.executeUpdate(;System.out.println(修改成功!;rs3.close(;/pstmt3.close(;if(m12=3System.out.println( 输入你修改后的值:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m13=br.readLine(;catch(IOException expstmt31.close(;PreparedStatementpstmt3=con.prepareStatement(Update hy set MPeople=? where MNo=?;pstmt3.setString(1,m13;/pstmt3.setint(2,m11;pstmt3.setString(2,m11;pstmt3.executeUpdate(;System.out.println(修改成功!;rs3.close(;if(m12=4System.out.println( 输入你修改后的值:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m13=br.readLine(;catch(IOException expstmt31.close(;PreparedStatementpstmt3=con.prepareStatement(Update hy set MRecorder=? where MNo=?;pstmt3.setString(1,m13;/pstmt3.setint(2,m11;pstmt3.setString(2,m11;pstmt3.executeUpdate(;System.out.println(修改成功!;rs3.close(;elseSystem.out.println(你要更改的项不存在!;if(m=4String m11=;String m13=;int m12=0;System.out.println(选择你要修改公告编号:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m11=br.readLine(;catch(IOException exPreparedStatementpstmt31=con.prepareStatement(select * from gg where GNo=?;pstmt31.setString(1,m11;ResultSet rs3=pstmt31.executeQuery(;if(rs3.next(System.out.println(输入你要修改的项:1.公告内容2.公告时间3.通知人;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m12=Integer.parseInt(br.readLine(;catch(IOException exif(m12=1System.out.println( 输入你修改后的值:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m13=br.readLine(;catch(IOException expstmt31.close(;PreparedStatementpstmt3=con.prepareStatement(Update gg set GContent=? where GNo=?;pstmt3.setString(1,m13;pstmt3.setString(2,m11;pstmt3.executeUpdate(;System.out.println(修改成功!;if(m12=2System.out.println( 输入你修改后的值:;tryBufferedReader br=new BufferedReader(new InputStreamReader(System.in;m13=br.readLine(;catch(IOException expstmt31.close(;PreparedStatementpstmt3=con.prepareStatement(Update gg set GTime=? where GNo=?;pstmt3.setString(1,m13;/pstmt3.setint(2,m11;pstmt3.setString(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论