工资管理系统
三、 表及表关系设计
根据数据库的建表原则,将系统所需数据划分到3个表中,分别是职工信息表、工资信息表和职工工资表。
1)职工信息表
职工信息(职工编号,姓名,性别,出生日期,所属部门,密码) 说明:(1) “职工编号”字段为主关键字。 2) 工资信息表
工资信息(部门编号,部门名称,工时,评价 说明:(1) “部门编号”字段为主关键字。 3)职工工资表
职工工资(职工编号,部门编号,季度,基本工资,奖惩工资,总评工资) 说明:(1) “职工编号”与“部门编号”字段为联合唯一关键字。
2. 创建表间关系
为3个数据表建立关系如图2所示。
图2 数据表关系
其中“工资信息”表与“职工工资”表通过“部门编号”字段建立一对多关系;“职工信息”表与“职工工资”表通过“职工编号”字段建立一对多关系,设置如图3所示。
6
工资管理系统
图3 编辑表间关系
7
工资管理系统
四、 查询设计
1. 创建“登录窗体查询”
查询对象名称:登录窗体查询。
数据源:“职工信息”表。
功能:根据“登录窗体”提供的使用者的职工编号,从“职工信息”表中提取满足条件的记录生成“查询”对象。“查询”对象中仅包含“职工编号”和“密码”字段。
建立过程如下: (1) 在Access窗口的导航窗格中选择“创建”选项卡,然后单击“查询”分组中的【查询设计】按钮,打开查询设计视图和“显示表”窗口。
(2) 从“显示表”窗口中将“职工信息”表添加到设计视图显示区后关闭窗口。
(3) 将“职工编号”和“密码”字段依次拖动到设计视图网格区的字段行。 (4) 在“学号”字段的条件单元格中输入“[Forms]![登录窗体]![txt_bh]”,其中“登录窗体”是系统登录窗体的名称(将在下一节介绍创建过程),“txt_bh”是该窗体上的文本框控件,用于接收用户输入的职工编号。
(5) 保存查询并命名为“登录窗体查询”,其设计视图如图 4所示。
图 4 “登录窗体查询”对象
8
工资管理系统
2. 创建“工资信息查询”
查询名称:工资信息查询。 数据源:“工资信息”表。
功能:根据“工资录入窗体”提供的课程名称,从“工资信息”表中提取满足条件的记录生成“查询”对象。“查询”对象中仅包含“部门编号”和“部门名称”字段。
建立过程如下: (1) 在Access窗口的导航窗格中选择“创建”选项卡,然后单击“查询”分组中的【查询设计】按钮,打开查询设计视图和“显示表”窗口。
(2) 从“显示表”窗口中将“部门信息”表添加到设计视图显示区后关闭窗口。
(3) 将“部门编号”和“部门名称”字段依次拖动到设计视图网格区的字段行。
(4) 在“部门编号”字段的条件网格格中输入“[Forms]![工资录入窗体]![cb_bmbh]”,其中“成绩录入窗体”是窗体的名称,“cb_bmmc”是该窗体上的组合框控件,用于接收用户选择的部门名称。
(5) 保存查询并命名为“工资信息查询”,其设计视图如图 5所示。
图 5 “工资信息查询”对象
3. 创建“工资追加查询”
查询名称:工资追加查询。
功能:将用户通过“工资录入窗体”输入的信息添加到“职工工资”表中。
9
工资管理系统
建立过程如下: (1) 在Access窗口的导航窗格中选择“创建”选项卡,然后单击“查询”分组中的【查询设计】按钮,打开查询设计视图,直接关闭“显示表”窗口。
(2) 单击“查询类型”分组中的【追加】按钮,打开“追加到”对话框,选择表名称为“职工工资”表,单击【确定】按钮后,在查询设计视图的网格区会出现追加到”一行。以后当查询运行时,将会在“职工工资”表中添加一条新(空)记录。
(3) 在第1列的“字段”行网格中输入“[Forms]![工资录入窗体]![txt_bh]”,其中“工资录入窗体”是窗体名称,“txt_bh”是该窗体上的一个文本框,用于接收用户输入的职工编号。然后,在“追加到”行网格中选择“职工编号”字段。该列的作用是将用户输入的职工编号写入“职工工资”表新记录的“职工编号”字段中。
(4) 在第2列“字段”行的网格中输入“[Forms]![工资录入窗体]![txt_jd]”,其中 “txt_jd”是窗体上的一个文本框,用于接收用户输入的季度。然后,在“追加到”行网格中选择“季度”字段。该列作用是将用户输入的季度值写入新记录的“季度”字段中。
(5) 在第3列“字段”行的网格中输入“[Forms]![工资录入窗体]![txt_gz1]”,其中 “txt_ gz1”是窗体上的一个文本框,用于接收用户输入的基本工资。然后,在“追加到”行网格中选择“基本工资”字段。该列的作用是将用户输入的基本工资写入新记录的“基本工资”字段中。
(6) 在第4列“字段”行的网格中输入“[Forms]![工资录入窗体]![txt_gz2]”,其中 “txt_ gz2”是窗体上的一个文本框,用于接收用户输入的奖惩工资。然后,在“追加到”行网格中选择“奖惩工资”字段。该列的作用是将用户输入的基本工资写入新记录的“奖惩工资”字段中。
(7) 在第5列 “字段”行的网格中输入“[Forms]![工资录入窗体]![txt_bmbh]”,其中 “txt_bmbh”是窗体上的一个文本框,是用户选择的部门编号。然后,在“追加到”行网格中选择“部门编号”字段。该列的作用是将用户确认的部门编号写入新记录的“部门编号”字段中。
(8) 保存查询并命名为“工资追加查询”,其设计视图如图 6所示。
图 6 “工资追加查询”对象
10