1、 江 西 理 工 大 学 本 科 数 据 库 课 程 设 计(论文) 题 目:工资管理系统 学 院:信息工程学院 专 业: 班 级: 学 生: 学 号: 指导教师: 目 录 第一章 需求分析……………………………………………3 1.1数据录入功能…………………………………………………3 1.2数据查询功能…………………………………………………3 1.3系统功能图……………………………………………………4
2、第二章 概念结构设计…………………………………………4 2.1概念设计………………………………………………………4 2.2逻辑设计………………………………………………………6 2.3物理设计………………………………………………………7 2.4数据完整性设计………………………………………………10 第三章 开发工具及平台……………………………………11 3.1开发工具………………………………………………………11 3.2开发平台………………………………………………………11 3.3数据库连接方式………………………………………………
3、11 第四章 关键代码和主要界面………………………………12 4.1连接数据库代码…………………………………………12 4.2添加代码…………………………………………………12 4.3删除代码…………………………………………………15 4.4修改代码…………………………………………………15 4.5登陆界面…………………………………………………17 第一章 需求分析 本系统实现以下主要功能 1.1数据录入功能 主要任务是对各种工资信息进行日常的管理,如工资信息的输入、查询、修改、增加、删除,迅速准确地完成各种工资信息
4、的统计计算和汇总。 1.2数据查询功能 系统需要提供以下查询功能: 1)员工津贴信息情况、保留工资、综合补贴、薪级工资等信息。 2)员工工资基本情况:年、月、姓名、部门、基本工资、医疗金、失业金、应发工资、实发工资等。 1.3系统功能图 表1-3 功能图 工资管理系统 员工信息 工资信息 工资汇总 工资查询 系统维护 资料输入 员工查询 工资总表 工资查询 基本工资 工资浏览 员工增删 工龄工资 岗位工资 删除用户 增加用户 第二章 概念结构设计 2.1概念设计 分析
5、前面的系统功能要求,需要一个表来存储和管理员工信息,使系统能够接受员工原始的各项数据,以实现数据录入、查询和统计员工信息等功能。员工是本系统的第一个实体。 为了能实现查询和统计部门内员工情况等功能,必须要有一个表来存储和管理所有部门的信息。部门是本系统的第二个实体。 工资是以员工工作情况来制定的,需要建立一个表来记录各种工资、津贴、扣款的信息。它主要为各种查询和统计功能提供工资数据,工资是第三个实体。 据此可画出E-R图如下: 表2.1 E—R图 部门 工作 员工 获得 工资 N M M 部门名称 负责人 人数 公积金 岗位津贴 保留工资 工会费
6、 实发工资 应发小计 综合补贴 职岗津贴 薪级工资 失业金 养老保险 医疗金 员工号 工龄 部门名称 职务等级 性别 姓名 年龄 1 2.2逻辑设计 将数据库的概念模型转换为关系模型: 实体转换成的关系模式有: 员工(工号,姓名,性别,年龄,部门名称,工龄,职务等级) 部门(部门名称,部门负责人,部门人数) 获得(工号,姓名) 工资(工号,岗位津贴,保留工资,职岗津贴,综合补贴,薪级工资,应发小计,养老保险,医疗金,失业金,公积金,工会费,实发工资) 带下划线的属性为各个关系模式的外码,字体为粗体的属性为各关系模式的主码。 关系范式:工
7、资管理系统∈1NF 每个属性均不可再分。 2.3物理设计 1.数据库与数据表设计 ①员工信息数据表定义 列名 数据类型 长度 允许空 员工号 Varchar 20 姓名 Varchar 50 √ 性别 Varchar 2 工龄 Char 10 部门名称 Varchar 50 √ 年龄 Char 10 √ 职务等级 Varchar 50 √ 其中员工号是主键,唯一标识。 部门名称是外键。员工号将记录员工的编号,在员工信息表中增加这一列时,虽然增加了数据冗余,但可以在查询每个员工信息时,提高系统的性能。
8、因为员工信息表的记录数相对固定,相比之下,增加这个冗余的列对于整个系统来说是有利的。通过它,系统将引用到工资信息。 ②部门信息数据表定义 列名 数据类型 长度 允许空 部门名称 Varchar 50 负责人 Varchar 50 √ 人数 Int √ 其中部门名称是该表的主键,唯一标识一个部门 ③工资数据表定义 列名 数据类型 长度 允许空 保留工资 Float 10 √ 岗位津贴 Float 10 √ 职岗津贴 Float 10 √ 综合补贴 Float 10 √ 薪级工资 Float 10 √
9、 应发小计 Float 10 √ 养老保险 Float 10 √ 医疗金 Float 10 √ 失业金 Float 10 √ 公积金 Float 10 √ 工会费 Float 10 √ 实发工资 Float 10 √ 员工编号 Varchar 20 其中员工编号作为该表的主键,唯一标识,保证信息表的数据的参照完整性。 2.4数据完整性设计 1)给每个表实施主键约束。 ①主键约束、非空值约束 员工:员工号为主键,所以此项非空。 部门:部门名称为主键所以此项非空。 工资:员工编号为主键,所以此项非空。 2)实施c
10、heck约束 员工表中建立一个检查约束,即员工性别不是“男”就是“女”。 第三章 开发平台及工具 3.1开发工具: Dreamweaver 8 3.2开发环境的选择: Microsoft access 2003以及IIS信息服务 在使用Dreamweaver 8作为工具的条件下,运用VB Script语言 、Html标签、css页面布局,以Microsoft access 2003作为后台数据库,在IIS环境下编写并测试运行网页。 3.3数据库连接方式: 本系统使用的是ADO 中OLE DB Connection 方式连接数据
11、库。 OLE DB是通向不同的数据源的低级应用程序接口。OLE DB不仅包括微软资助的标准数据接口开放数据库连通性(ODBC)的结构化查询语言(SQL)能力,还具有面向其他非SQL数据类型的通路。OLE DB中的对象主要包括数据源对象、阶段对象、命令对象和行组对象。 第四章 关键代码和主要界面 4.1连接数据库代码 <% On error resume next dim DBPath,connstr,conn DBPath="Database/FlexMenu.mdb" '动态链接路径 connstr = "Provider=Microsoft.Jet.
12、OLEDB.4.0;Data Source=" & Server.MapPath(DBPath) set conn=server.createobject("ADODB.CONNECTION") conn.open connstr %> 4.2添加代码 <% Set excconn=Server.CreateObject("ADODB.Connection") excStrConn= "Driver={Microsoft Excel Driver (*.xls)};DBQ="&request("file") excconn.Open
13、 excStrConn '查询excel语句 Set excrs = Server.CreateObject("ADODB.Recordset") excSql="select * from [Sheet1$]" excrs.Open excSql,excconn,2,2 set rs=server.createObject("ADODB.Recordset") do while Not excrs.EOF flat = 0
14、 sql="select * from namesfz where name='"&excrs(0)&"'" set rs=server.createObject("ADODB.Recordset") rs.open sql,conn,1,1 if not rs.EOF then '此用户存在 'response.write rs("id") 'if not rs.eof then 'j=0
15、 sql1="select * from jhgz where name='"&rs("name")&"'" set rs1=server.CreateObject("adodb.recordset") rs1.open sql1,conn,1,3 do while Not rs1.EOF if year(date())= year(rs1("time")) and month(rs1("time"))=month( year(date())&"-"&req
16、uest("month_gz")&"-"&day(date())) then flat = 1 for t_i=1 to 19 rs1(t_i+1) = excrs(t_i) next rs1
17、"time") =( year(date())&"-"&request("month_gz")&"-"&day(date())) rs1.update 'response.write rs1(2) ' response.write "" else set rs=server.CreateObject("adodb.recordset") sql="select * from jhgz where ID="&request("ID") rs.open sql,conn,1,1 %> 4.5登陆界面 第 17 页
©2010-2025 宁波自信网络信息技术有限公司 版权所有
客服电话:4009-655-100 投诉/维权电话:18658249818