员工工资管理系统报告(VB+SQL_Server).pdf

上传人:1398****507 文档编号:72377225 上传时间:2023-02-10 格式:PDF 页数:39 大小:1.28MB
返回 下载 相关 举报
员工工资管理系统报告(VB+SQL_Server).pdf_第1页
第1页 / 共39页
员工工资管理系统报告(VB+SQL_Server).pdf_第2页
第2页 / 共39页
点击查看更多>>
资源描述

《员工工资管理系统报告(VB+SQL_Server).pdf》由会员分享,可在线阅读,更多相关《员工工资管理系统报告(VB+SQL_Server).pdf(39页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、课程名称题目名称学生学院课课 程程 设设 计计数据库应用课程设计工资管理系统年 月日摘摘 要要本报告介绍了一个使用 Visual Basic 为前台,SQL Server 2000 为后台,用于工资管理的数据库管理系统。该系统能够实现对部门信息、管理员信息、员工信息、工资信息和考勤信息的管理功能,即对这些信息的编辑、查询。报告首先分析了用户的需求,设计出了系统的功能结构图,然后对系统进行了概念结构设计,设计出了系统的局部ER 图和全局 ER 图,根据全局ER 图对系统进行了逻辑结构设计,确定出系统的数据结构即关系模式,根据这些关系模式,在 SQL Server 2000 中,创建了部门信息、管

2、理员信息、员工信息、工资信息和考勤信息等五张基本表对象;同时,利用这些表对象,创建了满足用户需求的各种查询对象;实现了在 SQL Server 环境下的工资管理系统功能。最后,使用数据库连接技术,以设计完成的 SQL Server 2000 数据库文件为后台,VB 界面为前台,设计了系统登录窗体和员工基本信息管理窗体,实现了工资管理系统的部分功能。关键词:关键词:数据库,SQL Server 2000,工资管理小组情况小组情况本系统是通过小组全体成员的共同努力,经过分工合作完成的,具体情况如下:1.合作的工作需求分析、概念结构设计、逻辑结构设计和报告的草稿通过小组讨论完成。2.分工在数据库系统

3、的总体方案确定之后,小组成员开始分工,独立完成不同的模块及工作。目目录录1需求分析.错误错误!未定义书签。未定义书签。系统设计的意义.错误错误!未定义书签。未定义书签。系统功能.错误错误!未定义书签。未定义书签。系统数据.错误错误!未定义书签。未定义书签。2概念结构设计.错误错误!未定义书签。未定义书签。实体分析及其局部 ER 图.错误错误!未定义书签。未定义书签。实体之间的联系及其 ER 图.错误错误!未定义书签。未定义书签。系统全局 ER 图.错误错误!未定义书签。未定义书签。3逻辑结构设计.错误错误!未定义书签。未定义书签。4 数据库设计.错误错误!未定义书签。未定义书签。创建表对象.错

4、误错误!未定义书签。未定义书签。创建表之间的关系.错误错误!未定义书签。未定义书签。创建视图.错误错误!未定义书签。未定义书签。创建存储过程.错误错误!未定义书签。未定义书签。创建触发器.错误错误!未定义书签。未定义书签。5 前台界面设计.错误错误!未定义书签。未定义书签。系统工程结构设计,.错误错误!未定义书签。未定义书签。登录模块设计.错误错误!未定义书签。未定义书签。界面设计.错误错误!未定义书签。未定义书签。连接设计.错误错误!未定义书签。未定义书签。登陆窗体代码设计.错误错误!未定义书签。未定义书签。主窗体(MDIForm1)模块设计.错误错误!未定义书签。未定义书签。总结.错误错误

5、!未定义书签。未定义书签。致谢.错误错误!未定义书签。未定义书签。参考文献.错误错误!未定义书签。未定义书签。1 1需求分析需求分析系统设计的意义系统设计的意义随着信息化技术的发展及普及,工资管理模式也发生了巨大的变化,由原来的手工管理模式逐步转变为信息化管理,通过信息化管理,将管理员、员工及部门等信息集成在一个系统中,使公司能够方便地处理工资发放操作,也使公司及相关人员能够在第一时间掌握工资信息及员工情况,并根据这些信息做出今后的管理决策计划。系统功能系统功能为了使本小组设计的系统能够尽可能满足工资管理的实际需求,在进行系统设计之前,小组全体成员通过查资料、亲临公司进行调查和小组多次激烈的讨

6、论,最后确定本系统应该具有如下的功能:部门信息管理:能够对部门的信息进行有效的管理,其中包括部门信息的添加、修改和删除,以及部门信息查询。员工信息管理:能够对员工的信息进行有效的管理,其中包括员工信息的添加、修改和删除,以及员工信息查询。工资管理:能够对聘任信息进行有效的管理,其中包括聘任信息的添加、修改和删除,以及聘任信息查询。考勤管理:能够对考勤信息进行有效的管理,其中包括考勤信息的添加、修改和删除,以及考勤信息查询。管理员管理:能够对管理员信息进行有效的管理,其中包括管理员信息的添加、修改和删除,以及管理员信息查询。上述的需求分析可以总结为如图 1-1 所示的功能结构图。工资管理系统部门

7、管理员工管理工资管理考勤管理管理员部门信息编辑部门信息查询员工信息编辑员工信息查询工资信息编辑工资信息查询考勤信息编辑考勤信息查询系统数据系统数据图 1-1工资管理功能结构图数据库的核心是数据,相互关联的数据构成数据结构。对于数据库设计来说,通常使用数据字典对各类数据及其集合进行描述,数据字典是进行数据收集和数据分析所获得的主要成果。下面将根据系统功能对本系统设计的数据项和数据结构分别进行分析。本系统涉及部门、员工和管理员三个对象,所以系统涉及的数据项由这三个对象本身的属性和它们之间关系的属性确定。下面将分别讨论他们的数据结构和数据项。(1)员工名称:公司员工含义:员工是工资管理系统的主要数据

8、结构,包含了员工的所有信息。既然员工属于系统管理的对象范畴,应具有统一的编号,每一位员工给一个编号,同一部门的员工有多个,故员工编号是员工的一个重要属性。组成:员工对象分别由员工编号、员工姓名、性别、部门名称、出生日期、籍贯、员工职位、住址、联系电话九个数据项组成。各数据项的含义如下:数据项:员工编号含义:员工编号,能够唯一标识每一位员工。别名:员工编号数据类型:字符型长度:10数据项:员工姓名含义:员工所取的名字别名:姓名数据类型:字符型长度:10数据项:性别含义:员工的性别数据类型:字符型长度:10数据项:部门名称含义:员工所属部门别名:部门名称数据类型:字符型长度:20数据项:出生日期含

9、义:员工的出生年月日别名:员工出生日期数据类型:时间日期型长度:8数据项:籍贯含义:员工的出生地别名:员工籍贯数据类型:字符型长度:10数据项:员工职位含义:员工所任职的岗位别名:职位数据类型:字符型长度:10数据项:住址含义:员工的住址别名:员工家庭地址数据类型:字符型长度:40数据项:联系电话含义:员工的联系电话别名:员工联系方式数据类型:字符型长度:11(2)部门名称:部门名称含义:企业的部门组成:部门对象分别由部门编号、部门名称、人数组成。各数据项的含义如下:数据项:部门编号含义:部门编号能够唯一确定部门的所有信息。别名:编号数据类型:字符型长度:10数据项:部门名称含义:部门的名称别

10、名:名称数据类型:字符型长度:20数据项:人数含义:部门的人数数据类型:int长度:4(3)管理员名称:管理员含义:在系统中起非常重要的作用,负责管理系统。组成:管理员对象分别由管理员编号、管理员姓名和密码组成。各数据项的含义如下:数据项:管理员编号含义:系统为每一位管理员进行统一编号管理,编号能够唯一确定管理员对象。别名:工号数据类型:字符型长度:10数据项:管理员姓名含义:管理员的姓名数据类型:字符型长度:10数据项:密码含义:管理员登录系统的安全编码,最初由系统分配一个登录密码,但管理员一旦登录系统,就可以修改密码了。数据类型:字符型长度:6(4)工资名称:工资含义:员工在公司上班,所获

11、得的工资报酬。组成:日期、基本工资、工龄工资、地区补贴组成。各数据项的含义如下:数据项:日期含义:发工资的日期数据类型:时间日期型长度:8数据项:员工编号含义:员工编号,能够唯一标识每一位员工。别名:员工编号数据类型:字符型长度:10数据项:员工姓名含义:员工所取的名字别名:姓名数据类型:字符型长度:10数据项:部门名称含义:员工所属部门别名:部门名称数据类型:字符型长度:20数据项:基本工资含义:员工所得的基本工资数据类型:int长度:4数据项:工龄工资含义:参与该公司工作的时间所额外获得的工资数据类型:int长度:4数据项:地区补贴含义:补贴给员工的地区差额数据类型:int长度:4(5)考

12、勤名称:员工考勤含义:员工经过考勤之后才能够进行有效管理,考勤由管理员完成,员工考勤时会产生旷工、请假、迟到、早退等属性。组成:员工编号、考勤日期、员工姓名、旷工、请假、迟到、早退。各数据项的含义如下:数据项:员工编号含义:员工编号,能够唯一标识每一位员工数据类型:字符型长度:10数据项:考勤日期含义:对员工每月进行考勤数据类型:时间日期型长度:8数据项:员工姓名含义:员工所取的名字别名:姓名数据类型:字符型长度:10数据项:旷工含义:记录每一个员工的旷工次数数据类型:int长度:4数据项:请假含义:记录每一个员工的请假次数数据类型:int长度:4数据项:迟到含义:记录每一个员工的迟到次数数据

13、类型:int长度:4数据项:早退含义:记录每一个员工的请假次数数据类型:int长度:42 2概念结构设计概念结构设计概念结构设计就是将需求分析阶段得到的用户需求抽象为数据库的概念结构,是逻辑结构设计的基础。本论文使用 ER 图来描述系统的概念结构。在实际设计过程中,首先分析系统中以实体为基本单位的局部 ER 图,然后分析两两实体之间的联系,画出两两实体联系的局部 ER 图,再将两两实体之间联系的 ER 图作为基本单位,画出多个实体之间联系的 ER 图,依次类推,最后将各局部 E-R图合并成全局 E-R 图,下面将针对该系统分别进行分析。实体分析及其局部实体分析及其局部 ERER 图图通过需求分

14、析得知工资管理系统的研究对象有部门、员工、公司和管理员四个对象,也就是四个实体。(1)部门对于工资管理系统来说,比较重要的部门信息是部门编号、部门名称、人数。其中部门的编号能够唯一确定某个部门的所有信息,故在该实体中定义部门编号为实体标识符。部门的 ER 图如 2-1 所示。部门部门名称部门编号人数(2)管理员工资管理系统中的所有管理工作由管理员来完成,管理员在系统中发挥着非图 2-1 部门 ER 图常重要的作用,故系统必须对管理员进行统一管理,给每个管理员设置管理员编号和密码。本系统中管理员实体的属性为管理员编号、管理员姓名和密码,其中,管理员编号能够唯一标识管理员的各个属性,所以定义管理员

15、编号为管理员实体的标识符。管理员的 ER 图如 2-2 所示。(3)员工在员工实体中,包含员工编号、员工姓名、性别、部门名称、出生日期、籍图 2-2 管理员 ER 图管理员编号管理员姓名密码管理员贯、员工职位、住址、联系电话九个属性。其中,编号能够唯一标识每一位员工,故定义编号为员工实体的标识符。员工实体的 ER 图如 2-3 所示。员工编号员工姓名部门名称性别员工住址(4)公司图 2-3 员工 ER 图出生日期员工职位联系电话籍贯在工资管理系统里,公司信息由名称、地址和负责人。其中公司的名称能够唯一确定公司的所有信息,故在该实体中定义公司名称为实体标识符。公司的ER 图如 2-4 所示。负责

16、人名称地址公司实体之间的联系及其实体之间的联系及其 ERER 图图(1)员工与部门联系的 ER 图企业中的每一位员工均由某个部门管理,一个部门管理多个员工,每一位员工仅能由一个部门管理,故部门和员工之间联系类型是 1:N 的联系。部门在管理员工的过程中将产生部门编号、部门名称和人数等属性,由于在部门里,部门可能会出现姓名相同的员工,为了方便灵活的管理每个员工,需要为每个员工建立一个员工编号。员工和部门联系的 ER 图如图 2-5 所示。联系电话属于N员工员工编号住址员工职位籍贯部门编号部门名称人数图 2-4 公司 ER 图部门1出生日期员工姓名性别图 2-5 部门与员工的联系(2)公司和员工联

17、系的 ER 图应聘者一旦成为公司员工之后,就可以对员工进行考勤管理了。随后公司与员工之间通过工资建立联系,两个实体之间是 1:N 联系。在这过程中,产生了考勤和工资两个联系。ER 图如图 2-6 所示。名称地址早退旷工考勤日期请假迟到N员工姓名住址员工职位1公司1负责人工龄工资地区补贴考勤员工N性别员工编号出生日期基本工资籍贯工资日期图 2-6公司与员工的联系系统全局系统全局 ERER 图图2.3.1 属性整合在整合的过程中,各局部 ER 图的属性发生如下的冲突,所以需要重新进行定义。(1)编号:编号属性分别在四处出现,所以要进行重新定义。根据数量所处的位置,分别定义为部门编号、员工编号、考勤

18、编号、管理员编号。2.3.2 关系整合全局 ER 图是创建数据结构的基础,故由局部 ER 图向全局 ER 图整合的过程中,应该根据系统的功能和实际操作需要做取舍。(1)在公司和员工两实体联系中,产生考勤与工资的联系。(2)员工是系统一个非常重要的实体,员工编号又是员工一个非常重要的属性,该属性正好是员工实体的主键,故通过该属性可以建立员工和部门之间的联系。将图 2-5、2-6 合并,同时对各个属性和关系进行整合,就得到系统全局ER 图。在本工资管理系统中,管理员不是系统研究的重点内容,为了简化系统,故在全局 ER 图中,可以不考虑管理关系,在系统中仅将管理员作为独立的对象处理。整合后的全局 E

19、R 图如图 2-7 所示。考勤日期名称地址旷工早退住址迟到请假考勤员工姓名员工职位负责人公司1工龄工资员工NN性别籍贯员工编号出生日期工资地区补贴基本工资日期属于1部门管理员管理员姓名管理员编号人数部门名称部门编号密码图 2-7 全局 ER 图整合后各实体及其联系的属性如下:管理员(管理员编号,管理员姓名,密码);部门(部门编号,部门名称,人数,);员工(员工编号,员工姓名,性别,出生日期,籍贯,员工职位,住址);考勤(员工编号,考勤日期,请假,早退,迟到,旷工);工资(员工编号,日期,地区补贴,工龄工资,基本工资)。公司(名称,地址,负责人);说明:由于公司只有一个,而且其所有属性都是确定的

20、,所以不必考虑公司实体。3 3逻辑结构设计逻辑结构设计逻辑结构设计的目的是将全局概念模型(ER 图)转换成 DBMS 支持的概念模式或关系模式(或者称为数据结构)。本系统选用 SQL Server 2000 作为后台数据库,该数据库属于关系型数据库,即使用表结构表示系统中的所有实体及其联系。要在 SQL Server 2000 中实现图 2-7 所示的全局 ER 图(系统概念结构),必须将其转换成关系模式。从 ER 图出发,导出关系模式数据结构遵循如下的两个原则:第一,对 ER 图中的每个“实体”,都应该转换成一个关系,该关系内至少要包含对应实体的属性,并根据语义关系确定关系的主键。第二,对

21、ER 图中的“联系”,要根据实际联系的方式及数据处理的需要,或者将其作为独立的关系来处理,或者将关系的属性(如果有)纳入相关联的实体的属性中。如果实体之间是 1:N 联系,且联系没有产生对系统来说非常重要的属性,一般将 1 端的主键纳入 N 端的实体关系中,但是如果联系中产生对系统比较重要的属性,且需要独立研究该属性,则要将联系转换成一个独立的关系。如果实体之间的联系是 M:N 联系,且联系中的属性多或者比较重要,则要将联系作为独立的关系来处理,且在关系中要包含联系的属性和与联系相关联的实体的属性。根据这个原则,将图 2-7 与 2-8 转换成图 3-1 所示的数据结构。考勤(员工编号、考勤日

22、期、员工姓名、请假、旷工、迟到、早退)1考勤员工工资NN员工(员工编号、员工姓名、部门名称、出生日期、性别、员工职位、籍贯、住址、联系电话)公司工资(员工编号、日期、员工姓名、基本工资、地区补贴、工龄工资)公司(名称、地址、负责人)管理员管理员((管理员编号、管理员姓名、密码)属于1部门部门(部门编号、部门名称、人数)图 3-1 将全局 ER 图转换成数据结构整合后各实体及其联系的属性如下:管理员(管理员编号,管理员姓名,密码);部门(部门编号,部门名称,人数,);员工(员工编号,部门名称,员工姓名,性别,出生日期,籍贯,员工职位,住址,联系电话);考勤(员工编号,考勤日期,员工姓名,请假,早

23、退,迟到,旷工);工资(员工编号,日期,员工姓名,地区补贴,工龄工资,基本工资)。公司(名称,地址,负责人);说明:由于公司只有一个,而且其所有属性都是确定的,所以不必考虑公司实体。4 4 数据库设计数据库设计本系统使用 SQL Server 2000 作为后台数据库,同时也使用 Visual Basic设计了一个前台界面,因此,在 SQL Server 中,除了创建基本表对象之外,还创建了视图。创建表对象创建表对象表对象是数据库最基本的对象,数据库中所有其它的对象都是基于表对象来创建的。表对象要根据逻辑结构设计阶段设计的关系模式来创建。在创建表结构之前,首先应该确定表中各字段的数据类型和约束

24、,然后在设计视图或 SQL 视图中创建表对象。下面分别使用表格来表示各个表对象的数据类型和约束。(1)系统管理员在管理员对象的三个字段中,管理员编号能够唯一标识一个管理员,所以将该字段定义为主键,其它两个字段在管理员表中必不可少,所以定义为非空约束。表 4-1 列出了管理员表结构的数据信息。列名管理员编号姓名密码数据类型char(10)char(10)varchar(6)约束情况主键非空非空表 4-1管理员表结构(2)部门信息表部门编号能够唯一标识部门的所有信息,故定义为主键,部门名称和部门人数字段不能为空,表 4-2 列出了部门表结构的数据信息。列名数据类型约束情况部门编号部门名称人数cha

25、r(10)char(20)smallint主键非空非空表 4-2部门表结构(3)员工信息表员工是收发工资的主要对象,在员工关系中定义员工编号为主键,其余为非空约束,表 4-3 列出了员工信息表结构的数据信息。列名员工编号员工姓名性别部门名称出生日期籍贯员工职位联系电话住址数据类型char(10)char(10)char(10)char(20)datetimechar(10)char(10)char(11)char(40)约束情况主键非空非空非空非空允许空非空非空允许空表 4-3员工信息表结构(4)考勤信息表考勤通常作为信息统计和凭证使用,每一个考勤信息作为一个独立的记录,故定义员工编号与考勤日

26、期为主键。表 4-4 列出了基本考勤表结构的数据信息。列名员工编号考勤日期数据类型char(10)datetime约束情况主键员工姓名请假旷工早退迟到char(10)intintintint非空允许空允许空允许空允许空表 4-4考勤表结构(5)工资信息表工资信息表作为工资统计使用,每一个工资信息作为一个独立的记录,故定义员工编号与日期为主键,其余字段为非空约束。表 4-5 列出了基本工资信息表结构的数据信息。列名员工编号日期员工姓名部门编号工龄工资地区补贴基本工资数据类型char(10)datetimechar(10)char(20)smallintsmallintsmallint约束情况主键

27、非空非空非空非空非空表 4-5考勤表结构创建表之间的关系创建表之间的关系通过表之间关系的创建,为创建多表之间的连接查询做好准备。本系统创建的关系图如图 4-6 所示。图 4-6 系统关系图创建视图创建视图根据以上可得知,本系统创建的 SQL Server 2000数据库文件中共包含 5 个表对象。为了方便管理员使用该系统进行数据查询,系统还创建了如下的视图。1.单表查询视图:(1)员工信息查询视图能够对所有员工的信息进行查询;(2)部门信息查询视图能够对每个部门的所有信息进行查询;(3)考勤信息查询视图能够对考勤的所有信息进行查询;(4)工资信息查询能够对工资的所有信息进行查询;2.多表查询视

28、图(1)工资信息表和员工信息表联合查询(数据完整)2.统计各部门月工资总数3.统计所有部门月工资总额创建存储过程创建存储过程1.创建 cunchu1,查询员工的所有信息。create procedure Cunchu1asselect*from 员工信息表2.创建 cunchu2,按编号查询查询员工的所有信息。create procedure Cunchu2find 员工编号 char(10)asselect员工编号,员工姓名,部门名称,员工职位from 员工信息表where 员工编号=find 员工编号GO3.创建 cunchu3,向部门信息表中添加一个新的记录。create procedu

29、re Cunchu3部门编号 char(10),部门名称 char(20),部门人数 char(10)asinsert 部门信息表VALUES(部门编号,部门名称,部门人数)GO创建触发器创建触发器1)创建员工信息表删除触发器 当用户删除员工信息表中的内容时,引发该触发器检查考勤信息表中是否存在该内容,如果存在就不能删除,否则就可以删除。create trigger tr_delete_员工 on 员工信息表for delete asdeclare 员工编号 char(10)select 员工编号=员工编号 from deletedif exists(select*from 考勤信息表 whe

30、re 员工编号=员工编号)beginrollbackend2)创建员工信息表更新触发器,当员工信息表中部门编号发生改变时,引发该触发器更新工资信息表中的部门属性。create trigger tr_update_员工on dbo.员工信息表for updateasif update(部门名称)begin declare b 部门名称 char(20),h 部门名称 char(20)select b 部门名称=部门名称 from deletedselect h 部门名称=部门名称 from insertedupdate 工资信息表 set 部门名称=h 部门名称 from 工资信息表 where

31、 部门名称=b 部门名称print(记录更新成功)end3)创建考勤信息表添加触发器,当用户向考勤信息表中输入员工的信息时,引发该触发器检查员工信息表中是否有该项内容,如果有就可以成功输入,否则就不能输入。create trigger tr_insert_考勤 on 考勤信息表for insert asdeclare 员工编号 char(10),考勤日期 datetime,员工姓名 char(10),早退 int,旷工 int,迟到 int,请假 intselect 员工编号=员工编号 from insertedselect 员工姓名=员工姓名 from insertedif not exis

32、ts(select*from 员工信息表 where 员工姓名=员工姓名 and 员工编号=员工编号)beginrollbackend5 5 前台界面设计前台界面设计本系统使用 SQL Server 2000 作为后台数据库,使用设计前台界面,因此,在 SQL Server 2000 中,仅需要创建基本表对象和表之间的关系,为了减少重复,在 VB 中仅创建了用户登录界面和员工信息查询和编辑界面。系统工程结构设计,系统工程结构设计,工资管理系统的工程中包含登录窗体、背景窗体、主窗体和各表对象的编辑窗体和查询窗体,共可创建五个窗体。其结构见图。图系统工程结构图登录模块设计登录模块设计5.3.1 界

33、面设计(1)登录窗体的设计界面如图所示。图登陆窗体界面(2)主窗体的设计界面如图所示。图主窗体界面(3)员工信息编辑窗体的设计界面如图所示。员工信息查询窗体的设计界面如图所示。图员工信息编辑窗体界面图员工信息查询窗体界面(4)窗体中各控件的属性设置登录窗体的两个标签使用默认的 Name 属性,其 Caption 属性如图所示。表表 登录窗体控件属性登录窗体控件属性默认控件名Form1Text1Text2Command1Command2Name 属性LogintxtNotxtCodecmdOKcmdCancle其他属性Caption=”登录窗体”PasswordChar=”*”Caption=”

34、确 定(&E)”Caption=”取消(&C)”5.3.2 连接设计当管理员输入账号和密码后,系统将根据管理员输入的信息,到后台数据库的管理员表中查找该信息是否存在,如果存在,系统将进入主窗体,供管理员使用,否则,系统将不可以使用。要完成这些任务,就必须在前台的VB 系统与后台的数据库之间建立连接,该模块使用 ADO 对象建立连接,创建的连接对象名称为 Conn,数据库提供者(数据库管理系统)为 Access2003 即,使用的数据库为“工资管理Access+”连接语句如下:provider=data source=工资管理 Access+创建连接之后,就要根据用户输入的信息建立查询,查询结果

35、保存在查询对象rs_login中,查询语言保存在sql 字符串中,并设置游标类型为键集类型,锁的类型为乐观锁,运行查询的语句如下:sql,conn,adOpenKeyset,adLockOptimistic5.3.3 登陆窗体代码设计PrivateSubForm_Load()coun=0=EndSubPrivateSubcmdCancle_Click()取消按钮的单击事件UnloadMeEndSubPrivateSubcmdOK_Click()确定按钮的单击事件StaticcounAsInteger静态变量,记录登录次数DimsqlAsString字符串变量,存放查询语句Dimrs_login

36、AsNew定义记录集对象变量,存放查询结果DimconnAsNew定义连接对象变量,存放链接信息Provider=;IntegratedSecurity=SSPI;PersistSecurityInfo=False;InitialCatalog=课程输出连接信息If=1ThenMsgBox恭喜您连接成功ElseMsgBox连接失败,请重新设置连接EndEndIf=IfTrim=ThenMsgBox用户名不能为空,请重新输入!Elsesql=select*from系统管理员where管理员编号&Trim&使用键集游标,乐观锁方式打开查询的记录sql,conn,adOpenKeyset,adLoc

37、kOptimisticIf=TrueThenMsgBox没有这个用户,请重输入!,48,=ElseIfTrim(2)=TrimThenUnloadMeElseMsgBox密码不正确,请重输入!,48,=EndIfEndIfEndIfcoun=coun+1Ifcoun=3ThenMsgBox对不起,您已经登录3 次了,系统将自动退出!UnloadMeEndIfEndSub主窗体(主窗体(MDIForm1MDIForm1)模块设计)模块设计(1)菜单及属性设置根据工资管理系统的功能,主窗体上设计有“员工管理”、“工资管理”、“部门管理”、“考勤管理”及退出共五个主菜单,主菜单中又包含有菜单项,各级

38、菜单及属性设置如表所示。表表“工资管理系统”主窗体菜单及其属性“工资管理系统”主窗体菜单及其属性标题员工管理员工信息查询员工信息编辑部门管理部门信息查询部门信息编辑考勤管理考勤信息查询考勤信息编辑mnuygManagmnuygFindmnuygEditmnubmManagmnubmFindmnubmEditmnukqnagmnukqndmnukqit名称工资管理工资信息查询工资信息编辑退出系统(2)员工信息编辑窗体代码设计Private Sub CmdAdd_Click()SubmnugznagmnugzndmnugzitmnuExitPrivate Sub CmdUpdate_Click()

39、将添加的纪录存入数据库 Dim cnn As New Dim rs As New Dim str As String,sql As Stringstr=Provider=;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=课程 str sql=select*from 员工信息表 where 员工编号=&Trim(Txtno)&sql,cnn,adOpenKeyset,adLockOptimistic If =False Then MsgBox 该编号已经存在,请重新输入!Txtno=Else MsgBox

40、修改成功!End IfEnd SubPrivate Sub CmdDelete_Click()删除纪录 Dim i As Integer i=MsgBox(确定要删除该记录吗,vbYesNo)If i=vbYes Then MsgBox 该记录已经成功删除 End IfEnd SubPrivate Sub CmdReturn_Click()Unload MeEnd SubPrivate Sub CmdFirst_Click()查第一条纪录 SubPrivate Sub CmdNext_Click()查下一条纪录 If =True Then MsgBox 这已经是最后一条记录了 End IfEn

41、d SubPrivate Sub CmdPrevious_Click()查前一条纪录 If =True Then MsgBox 这已经是第一条记录了 End IfEnd SubPrivate Sub CmdLast_Click()查最后一条纪录 Sub(3)员工信息查询窗体代码设计PrivateSubCmdFirst_Click()使游标移动到第一条记录EndSubPrivateSubCmdNext_Click()使游标移动到下一条记录If=TrueThenMsgBox这已经是最后一条记录了EndIfEndSubPrivateSubCmdPrevious_Click()使游标移动到上一条记录I

42、f=TrueThenMsgBox这已经是第一条记录了EndIfEndSubPrivateSubCmdLast_Click()使游标移动到最后一条记录EndSubPrivateSubCmdFind_Click()返回到主窗体=adCmdText修改连接对象的命令类型为文本型If=TrueThen=select*from员工信息表where员工姓名=+Trim+=ElseIf=TrueThen=select*from员工信息表where员工编号=+Trim+=ElseIf=TrueThen=select*from员工信息表ElseMsgBox请输入查询方式ExitSubEndIfIfThenMsg

43、Box对不起,没有查询到你需要的结果,请检查原因!EndIfEndSubPrivateSubCmdReturn_Click()UnloadMeEndSub总结总结通过本此课程设计,让我们更进一步地掌握了数据库应用课程的相关知识,熟悉了创建数据库管理系统的全过程。较好地掌握了运用 SQL 语言和视图创建单表和多表查询以及存储过程的参数查询,同时也掌握了创建 vb 前台设计的方法。在数据库的设计过程中,我们遇到了种种困难,比如各实体的类型及其联系的确定、多表联合创建视图、触发器的创建,但在老师的帮助下,我们把问题一个有一个地解决了。每一个问题的解决都加深了我们对数据库的了解。不过,由于专业知识的限

44、制,我们所制作的工资管理系统仍然存在一些问题,如系统功能单一、属性比较简单等,今后需要进一步学习,继续完善系统的功能。致谢致谢感谢郑玲利老师平时对我们的教导,此次课程设计,老师帮助了我们很多,在此感谢老师对我们的悉心教导。老师对工作的负责深深地影响了我们全组成员,使我们在不知不觉中全心投入了课程设计,尽自己最大的努力把系统做得更好。参考文献参考文献1 郑玲利.数据库原理及应用案例教程M.北京:清华大学出版社,.2 刘宇君.SQL Sever 数据库应用设计案例汇编M.北京:中国铁道出版社,.3 刘韬,骆娟.Visual Basic 数据库系统开发实例导航(第 2 版)M.北京:人民邮电出版社,.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作报告

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁