资源描述
摘 要
人事管理系统是一个企业单位不可缺乏部分,它内容对于企业决议者和管理者来说全部至关关键,所以人事管理系统应该能够为用户提供充足信息和快捷查询手段。使其企业人事管理初步实施计算机化,让计算机在人事管理中得到初步应用。使人事管理者总是依据正确、立即人事信息来进行决议,实现管理为有效改善现有企业人事管理模式,提升企业对职员信息、考评、奖惩、调动等基础信息管理效率,开发了该企业人事管理系统。该系统可经过利用两个用户进入登录,以后对表进行了设计,可对表内信息进行插入、修改、删除等操作,而使用触发器就可明白对该表或视图进行了什么操作。可使用视图进行多表查询,使用表间联络,选择所需列可快速查询信息,方便了表使用,还可使用存放过程输入参数查询,所以也提升了该系统应用灵活性。
关键字:企业人事管理,SQL Server ,系统,开发
目 录
1 企业人事管理系统开发基础 1
1.1 SQL Server 介绍 1
1.2 系统开发背景及现实状况 1
1.3 需求分析 1
1.3.1 需求调查 1
1.3.2 步骤图 2
2 数据库设计 2
2.1E-R图 3
2.2 表设计 3
2.2.1 职员信息表 4
2.2.2 部门信息表 5
2.2.3 调动信息表 6
2.2.4 奖惩表 7
2.2.5 考勤信息表 7
2.2.6 学历分布表 8
2.2.7 政治面貌代码表 9
2.2.8关系图 9
2.3创建视图 10
2.3.1 本科人员表 10
2.3.2 加班人员名单 11
2.3.3 人员调动情况 12
2.3.4 受奖人员 13
2.3.5 硕士已婚人员 14
2.3.6 销售部人员表 15
2.3.7 职员表 16
2.4 存放过程 17
2.4.1部门人员表 18
2.4.2 婚姻学历表(加密) 20
2.4.3 加班次数 22
2.4.4 奖惩类别表 23
2.4.5 学历表 24
2.5触发器及对信息操作 25
2.5.1 触发器“添加”及添加信息 25
2.5.2 触发器”修改”及修改信息 27
2.5.3 触发器”删除”及删除信息 28
2.6 权限 28
2.6.1 管理用户者权限 29
2.6.2用户者权限 31
3总结 34
4 致谢 34
5 参考文件 35
1 企业人事管理系统开发基础
1.1 SQL Server 介绍
SQL Server 将引进一个专门管理员连接,即使在一个服务器被锁住,或因为其它原因不能使用时候,管员能够经过这个连接,接通这个正在运行服务器。这一功效将能让管理员,经过操作诊疗功效、或Transact—SQL指令,找到并处理发觉问题。
SQL SERVER 将支持丰富全文应用软件。服务器编目功效将得到增强,对编目标对象提供更大灵活性。查询性能和可升级性将大幅得到改善,同时新管理工具将为相关全文功效运行,提供更深入了解。
1.2 系统开发背景及现实状况
在企业中,人事管理工作是很关键一项工作,它负责整个企业日常人事安排,人员人事管理等。以前全部是人工进行操作。伴随企业规模扩大,人事管理工作量也大大地加重。伴随计算机应用发展,人事工作者急切期望能够将大部分烦琐工作交给计算机处理,以减轻人工压力并提升工作效率 。而计算机普及加紧人事管理系统产生。
人事管理关键任务是为实现企业整体目标提供适宜可用人才,这就要求人事部门深入加大人事制度改革力度,建立好人才档案,为企业选拔贤能发明一个良好工作环境,使职员用其所长、人尽其才;关心和改善职员生活条件,使职员无后顾之忧,充足发挥自己内在潜力。
企业人事管理根本目标就是经过使用人才去达成最大利益。企业人事管理工作好坏对企业发展有较大影响,企业对人事管理全部较为重视。经过互联网查询资料来看,中国现在类似系统大多是针对企业职员管理,而对企业引进人才方面和和职员交流平台方面所做工作不多。
1.3 需求分析
1.3.1 需求调查
人事管理是企业管理一个关键内容。伴随时代进步,企业也逐步变庞大起来。怎样管理好企业内部职员信息,成为企业管理中一个关键问题。在这种情况下,一个能够规范化,自动化企业人事管理系统就显很关键。
最初人事管理,全部是靠人力来完成。当企业规模比较小时候,人力能够完成。伴随企业规模越来越大,企业职员人数越来越多,仍然维持着人力进行管理肯定会造成工作效率底,工作错误增高等问题。
人事管理系统就是把分散企业单位职员信息实施统一,集中,规范搜集管理。建立分类编号管理,电脑存贮查询、增加、修改、删除等现代化,专业化管理系统。为企机关和职员解除后顾之忧。
1.3.2 步骤图
图1-1 步骤图
2 数据库设计
数据库设计是数据库应用系统开发关键步骤,确保数据完整性,企业人事管理系统面向对象是企业内部各部门,提升人事管理效率,也是企业科学化、正规化管理和世界接轨关键条件。
2.1E-R图
E-R图也叫实体-联络图(Entity Relationship Diagram),它能够提供能够表示出实体类型、属性和联络方法,用来描述现实世界概念模型。
组成E-R基础要素关键有:
(1)实体型:在E-R图中用矩形来表示实体型,在矩形框内写明实体名称。比如职员李四、学生张三全部是实体。
(2)属性:在E-R图中用椭圆来表示属性,并用无向边将其和对应实体连接起来。比如职员姓名、工号、性别等全部是属性。
(3)联络:在E-R图中用菱形来表示联络,在菱形框内写联络名,并用无向边分别和相关实体连接起来,同时在无向边旁标上联络类型(1 : 1,1 : n或m : n)。
图2-1-1 E-R图
2.2 表设计
表是数据库基础单位,它是一个二维表,表由行或列组成。在设计数据时,应在充足进行项目需求分析调查前提下,分析该系统要有哪些表,每个表中要有那些列。设计表时应考虑:表有哪些列,列名字,每一列数据类型和长度,该列是否许可为空值;表中哪些列需要定义主键,哪个列需要定义外键、唯一键、标识列;表中哪些列数据有效范围需要限定,需要对哪些列提升查询速度。
图2-2-1 数据库内所建表
2.2.1 职员信息表
职员信息表内存放数据是每个职员基础信息,包含职员编号,姓名,性别,出生日期,政治面貌ID,学历编号,婚姻情况,部门编号,所任职位,现居地址,联络方法,入职时间,离职时间,在职状态等列。
图2-2-2 表所建列
(1)代码
USE [企业人事管理系统]
GO
CREATE TABLE [dbo].[职员信息表](
[职员编号] [nvarchar](5) COLLATE Chinese_PRC_CI_AS NOT NULL,
[姓名] [nvarchar](10) COLLATE Chinese_PRC_CI_AS NULL,
[性别] [nvarchar](5) COLLATE Chinese_PRC_CI_AS NULL,
[出生日期] [smalldatetime] NULL,
[政治面貌ID] [nvarchar](5) COLLATE Chinese_PRC_CI_AS NOT NULL,
[学历编号] [nvarchar](5) COLLATE Chinese_PRC_CI_AS NOT NULL,
[婚姻情况] [nvarchar](4) COLLATE Chinese_PRC_CI_AS NULL,
[部门编号] [nvarchar](5) COLLATE Chinese_PRC_CI_AS NOT NULL,
[所任职位] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
[现居地址] [nvarchar](20) COLLATE Chinese_PRC_CI_AS NULL,
[联络方法] [varchar](11) COLLATE Chinese_PRC_CI_AS NULL,
[入职时间] [datetime] NULL,
[离职时间] [datetime] NULL,
[在职状态] [nvarchar](4) COLLATE Chinese_PRC_CI_AS NULL,
CONSTRAINT [PK_职员信息表] PRIMARY KEY CLUSTERED
(
[职员编号] ASC,
[政治面貌ID] ASC,
[学历编号] ASC,
[部门编号] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
(2)查询职员基础信息:能够依据职员编号,姓名或是进入本企业时间进行查询职员基础信息,在此依据职员编号查询一条职员信息。
SELECT [职员编号] ,[姓名],[性别] ,[出生日期],[婚姻情况],
[部门编号],[所任职位],[现居地址],[联络方法],[在职状态]
FROM [企业人事管理系统].[dbo].[职员信息表]
where 职员编号='00023'
图2-2-3 查询信息
2.2.2 部门信息表
图2-2-4
(1)代码
USE [企业人事管理系统]
GO
CREATE TABLE [dbo].[部门信息表](
[部门编号] [nvarchar](5) COLLATE Chinese_PRC_CI_AS NOT NULL,
[部门名称] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
CONSTRAINT [PK_部门信息表] PRIMARY KEY CLUSTERED
(
[部门编号] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
(2)查询某部门,使用部门编号=113
SELECT [部门编号]
,[部门名称]
FROM [企业人事管理系统].[dbo].[部门信息表]
where 部门编号=114
图 2-2-5
2.2.3 调动信息表
图 2-2-6
(1)代码
USE [企业人事管理系统]
GO
CREATE TABLE [dbo].[调动信息表](
[职员编号] [nvarchar](5) COLLATE Chinese_PRC_CI_AS NULL,
[调动日期] [datetime] NULL,
[调动原因] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
[调后部门编号] [nvarchar](5) COLLATE Chinese_PRC_CI_AS NULL,
[调后职位] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
(2)查询某职员调动情况,职员编号=00032
SELECT [职员编号] ,[调动日期],[调动原因],[调后部门编号],[调后职位]
FROM [企业人事管理系统].[dbo].[调动信息表]
where 职员编号=00032
图 2-2-7
2.2.4 奖惩表
图 2-2-8
代码
USE [企业人事管理系统]
GO
CREATE TABLE [dbo].[奖惩表](
[职员编号] [nvarchar](5) COLLATE Chinese_PRC_CI_AS NULL,
[奖惩日期] [datetime] NULL,
[奖惩类别] [nvarchar](5) COLLATE Chinese_PRC_CI_AS NULL,
[奖惩原因] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
[奖惩分数] [int] NULL
) ON [PRIMARY]
Go
2.2.5 考勤信息表
图 2-2-9
代码
USE [企业人事管理系统]
GO
CREATE TABLE [dbo].[考勤信息表](
[考勤编号] [int] IDENTITY(1,1) NOT NULL,
[考勤月份] [nvarchar](2) COLLATE Chinese_PRC_CI_AS NULL,
[职员编号] [nvarchar](5) COLLATE Chinese_PRC_CI_AS NULL,
[病假] [int] NULL,
[事假] [int] NULL,
[迟到] [int] NULL,
[早退] [int] NULL,
[出差] [int] NULL,
[加班] [int] NULL,
[备注] [nvarchar](100) COLLATE Chinese_PRC_CI_AS NULL,
[统计时间] [datetime] NULL
) ON [PRIMARY]
Go
2.2.6 学历分布表
图 2-2-10
代码
USE [企业人事管理系统]
GO
CREATE TABLE [dbo].[学历分布表](
[学历编号] [nvarchar](5) COLLATE Chinese_PRC_CI_AS NOT NULL,
[学历] [nvarchar](6) COLLATE Chinese_PRC_CI_AS NULL,
CONSTRAINT [PK_学历分布表] PRIMARY KEY CLUSTERED
(
[学历编号] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
2.2.7 政治面貌代码表
图 2-2-11
代码
USE [企业人事管理系统]
GO
CREATE TABLE [dbo].[政治面貌代码表](
[政治面貌ID] [nvarchar](1) COLLATE Chinese_PRC_CI_AS NOT NULL,
[政治面貌名称] [nvarchar](4) COLLATE Chinese_PRC_CI_AS NULL,
CONSTRAINT [PK_政治面貌代码表] PRIMARY KEY CLUSTERED
(
[政治面貌ID] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
2.2.8关系图
图2-2-12
2.3创建视图
视图是一个虚拟表,它保留SELECT语句定义,是用户查看数据库表中数据一个方法。用户经过它能够以需要方法浏览表中部分或全部数据,而数据物理存放位置仍然在数据库表中,这些表称作视图基表。
视图中数据能够来自一个或多个基表,也能够来自视图。
视图能够使用户集中在她们感爱好或关心数据上,而能够考虑那些无须要数据。这么,因为用户只能看到在视图中显示数据,而看不到视图所引用表其它数据。在一定程度上确保了数据安全性。
图2-3-1 数据库内视图
2.3.1 本科人员表
建立该视图,经过职员信息表和学历分布表间联络,查询学历为本科职员。操作以下:
图2-3-2 所用表及表间关系
图2-3-3 列名及筛选条件
图2-3-4 查询结果
创建视图代码
USE [企业人事管理系统]
GO
CREATE VIEW [dbo].[本科人员表]
AS
SELECT dbo.职员信息表.职员编号, dbo.职员信息表.姓名, dbo.职员信息表.性别, dbo.学历分布表.学历
FROM dbo.职员信息表INNER JOIN
dbo.学历分布表ON dbo.职员信息表.学历编号= dbo.学历分布表.学历编号
WHERE (dbo.学历分布表.学历= N'本科')
GO
2.3.2 加班人员名单
使用职员信息表和部门信息表、职员信息表和考勤信息表间联络,查询企业职员加班情况,和部分相关信息。
图2-3-5 所用表及表间关系
图2-3-6 列名及筛选条件
图2-3-7 查询结果
USE [企业人事管理系统]
GO
CREATE VIEW [dbo].[加班人员名单]
AS
SELECT TOP (100) PERCENT dbo.职员信息表.职员编号, dbo.职员信息表.姓名, dbo.部门信息表.部门编号, dbo.职员信息表.所任职位, dbo.考勤信息表.考勤月份,
dbo.考勤信息表.加班
FROM dbo.部门信息表INNER JOIN
dbo.职员信息表ON dbo.部门信息表.部门编号= dbo.职员信息表.部门编号INNER JOIN
dbo.考勤信息表ON dbo.职员信息表.职员编号= dbo.考勤信息表.职员编号
WHERE (dbo.考勤信息表.加班> 0)
ORDER BY dbo.考勤信息表.考勤月份, dbo.部门信息表.部门编号
GO
2.3.3 人员调动情况
使用职员信息表和调动信息表和部门信息表两表间联络,查询职员调动情况,包含原部门名称及职位和调后部门编号及职位。
图2-3-8 所用表及表间关系
图2-3-9 列名及筛选条件
图2-3-10 查询结果
USE [企业人事管理系统]
GO
CREATE VIEW [dbo].[人员调动情况]
AS
SELECT dbo.职员信息表.职员编号, dbo.职员信息表.姓名, dbo.部门信息表.部门名称AS 原部门名称, dbo.职员信息表.所任职位, dbo.调动信息表.调动日期,
dbo.调动信息表.调后部门编号, dbo.调动信息表.调后职位
FROM dbo.职员信息表INNER JOIN
dbo.调动信息表ON dbo.职员信息表.职员编号= dbo.调动信息表.职员编号INNER JOIN
dbo.部门信息表ON dbo.职员信息表.部门编号= dbo.部门信息表.部门编号
GO
2.3.4 受奖人员
使用三表间联络,查询包含职员编号、姓名、部门编号、部门名称、奖惩类别及奖惩分数在内受奖人员情况。
图2-3-11 所用表及表间关系
图2-3-12 列名及筛选条件
图2-3-13 查询结果
USE [企业人事管理系统]
GO
CREATE VIEW [dbo].[受奖人员]
AS
SELECT dbo.职员信息表.职员编号, dbo.职员信息表.姓名, dbo.部门信息表.部门编号, dbo.部门信息表.部门名称, dbo.奖惩表.奖惩类别, dbo.奖惩表.奖惩分数
FROM dbo.奖惩表INNER JOIN
dbo.职员信息表ON dbo.奖惩表.职员编号= dbo.职员信息表.职员编号INNER JOIN
dbo.部门信息表ON dbo.职员信息表.部门编号= dbo.部门信息表.部门编号
WHERE (dbo.奖惩表.奖惩类别= N'奖')
GO
2.3.5 硕士已婚人员
该视图使用职员信息表和学历分布表间联络,查询学历及婚姻情况分布情况,在此筛选学历为硕士,婚姻情况为已婚职员。
图2-3-14 所用表及表间关系
图2-3-15 列名及筛选条件
图2-3-16 查询结果
USE [企业人事管理系统]
GO
CREATE VIEW [dbo].[硕士已婚人员]
AS
SELECT dbo.职员信息表.职员编号, dbo.职员信息表.姓名, dbo.职员信息表.性别, dbo.学历分布表.学历, dbo.职员信息表.婚姻情况
FROM dbo.职员信息表INNER JOIN
dbo.学历分布表 ON dbo.职员信息表.学历编号= dbo.学历分布表.学历编号
WHERE (dbo.学历分布表.学历= N'硕士') AND (dbo.职员信息表.婚姻情况= N'已婚')
GO
2.3.6 销售部人员表
查询一个部门有哪些职员,和她们所任职位,就能够使用该视图查询部门人员,此处使用筛选器筛选了部门编号为111部门。操作以下:
图2-3-17 所用表及表间关系
图2-3-18 列名及筛选条件
图2-3-19 查询结果
USE [企业人事管理系统]
GO
CREATE VIEW [dbo].[销售部人员表]
AS
SELECT dbo.职员信息表.职员编号, dbo.职员信息表.姓名, dbo.职员信息表.部门编号, dbo.部门信息表.部门名称, dbo.职员信息表.所任职位
FROM dbo.部门信息表INNER JOIN
dbo.职员信息表ON dbo.部门信息表.部门编号= dbo.职员信息表.部门编号
WHERE (dbo.职员信息表.部门编号= N'111')
GO
2.3.7 职员表
经过三表间联络,只查询各个职员编号、姓名、性别、所在部门名称及政治面貌名称。
图2-3-20 所用表及表间关系
图2-3-21 列名及筛选条件
代码
USE [企业人事管理系统]
GO
CREATE VIEW [dbo].[职员表]
AS
SELECT TOP (100) PERCENT dbo.职员信息表.职员编号, dbo.职员信息表.姓名, dbo.职员信息表.性别, dbo.部门信息表.部门名称, dbo.政治面貌代码表.政治面貌名称
FROM dbo.职员信息表INNER JOIN
dbo.部门信息表ON dbo.职员信息表.部门编号= dbo.部门信息表.部门编号INNER JOIN
dbo.政治面貌代码表ON dbo.职员信息表.政治面貌ID = dbo.政治面貌代码表.政治面貌ID
GO
2.4 存放过程
存放过程是T-SQL语句和流控语句集合,存放过程能被编译和优化。当首次实施存放过程是,SQL Server为其产生查询计划并将其保留在内存中,以后在调用该存放过程时就无须在进行编译,在一定程度上改善了系统功效。
图2-4-1 存放过程
2.4.1部门人员表
前面在视图中已创建了一个“销售部人员表”,在这里使用存放过程创建了一个“部门人员表”意图在于经过参数查询一个或多个部门职员信息及所任职位。
(1)创建代码
create procedure p_部门人员表
@部门名称nvarchar(50)
as
select 职员编号,姓名,部门名称,所任职位
from 职员信息表y,部门信息表b
where y.部门编号=b.部门编号and
部门名称=@部门名称
order by 职员编号
图2-4-2 创建存放过程(部门人员表)
(2)按部门名称查询部门人员
图2-4-3 实施存放过程部门人员表
图2-4-4 该存放过程实施界面
可在”值”一栏中输入任意部门名称,在此查询”销售部”和”采购部”
USE [企业人事管理系统]
GO
DECLARE @return_value int
EXEC @return_value = [dbo].[p_部门人员表] @部门名称= N'销售部'
SELECT 'Return Value' = @return_value
GO
图2-4-5 查询销售部人员
USE [企业人事管理系统]
GO
DECLARE @return_value int
EXEC @return_value = [dbo].[p_部门人员表] @部门名称= N'采购部'
SELECT 'Return Value' = @return_value
GO
图2-4-6 查询采购部人员
2.4.2 婚姻学历表(加密)
(1)代码
USE [企业人事管理系统]
GO
create procedure [dbo].[婚姻学历表]
@婚姻情况nvarchar(4),@学历nvarchar(6)
with encryption
as
select 职员编号,姓名,婚姻情况,学历
from 职员信息表y,学历分布表x
where y.学历编号=x.学历编号and
婚姻情况=@婚姻情况and 学历=@学历
order by 职员编号
GO
(2)实施
因该存放过程被加密,所以无法修改此存放过程.
图2-4-7 实施存放过程 婚姻学历表
图2-4-8 输入条件项
USE [企业人事管理系统]
GO
DECLARE @return_value int
EXEC @return_value = [dbo].[婚姻学历表]
@婚姻情况= N'未婚',
@学历= N'硕士'
SELECT 'Return Value' = @return_value
GO
图2-4-9 查询未婚硕士人员
所以,该企业没有同时符合婚姻情况为未婚,学历为硕士人员
USE [企业人事管理系统]
GO
DECLARE @return_value int
EXEC @return_value = [dbo].[婚姻学历表]
@婚姻情况= N'未婚',
@学历= N'大专'
SELECT 'Return Value' = @return_value
GO
图2-4-10 查询未婚大专员员
2.4.3 加班次数
(1)代码
USE [企业人事管理系统]
GO
create procedure [dbo].[加班次数]
@加班int
as
select 姓名,性别,加班as '加班次数'
from 职员信息表y,考勤信息表k
where y.职员编号=k.职员编号and 加班=@加班
(2)实施
图2-4-11
USE [企业人事管理系统]
GO
DECLARE @return_value int
EXEC @return_value = [dbo].[加班次数]
@加班= 1
SELECT 'Return Value' = @return_value
GO
图2-4-12
2.4.4 奖惩类别表
(1)代码
USE [企业人事管理系统]
GO
create procedure [dbo].[奖惩类别表]
@奖惩类别nvarchar(50)
as
select 姓名,奖惩类别,奖惩分数
from 职员信息表y,奖惩表j
where y.职员编号=j.职员编号and
奖惩类别=@奖惩类别
(2)实施
图2-4-13
USE [企业人事管理系统]
GO
DECLARE @return_value int
EXEC @return_value = [dbo].[奖惩类别表]
@奖惩类别= N'奖'
SELECT 'Return Value' = @return_value
GO
图2-4-14
2.4.5 学历表
USE [企业人事管理系统]
GO
create procedure [dbo].[学历表]
@学历nvarchar(6)
as
select 职员编号,姓名,性别,学历from 职员信息表y,学历分布表x
where y.学历编号=x.学历编号and 学历=@学历
图2-4-15
USE [企业人事管理系统]
GO
DECLARE @return_value int
EXEC @return_value = [dbo].[学历表]
@学历= N'硕士'
SELECT 'Return Value' = @return_value
GO
图2-4-16
2.5触发器及对信息操作
触发器关键经过事件触发而被实施,在指定表进行Insert、Update或Delete操作时被触发。SQL Server将触发器和触发它语句作为可在触发器内回滚单个事物对待,假如检测到严重错误,则这个事务即自动回滚,恢复到原来状态。下图是在职员信息表中所建触发器。
图2-5-1
2.5.1 触发器“添加”及添加信息
添加一条职员信息,利用触发器显示。
(1)触发器“添加”代码
USE [企业人事管理系统]
GO
create trigger [添加]
on [dbo].[职员信息表]
for insert
as
print '增加一条职员信息'
(2)插入信息
图2-5-2
INSERT INTO [企业人事管理系统].[dbo].[职员信息表]
([职员编号],[姓名],[性别],[出生日期],[政治面貌ID],[学历编号],
[婚姻情况],[部门编号],[所任职位],[现居地址],[联络方法],[入职时间],
[离职时间],[在职状态])
VALUES ('11111','新新','女','1990-12-5','2','004','未婚','113','职员','','','','','在' )
图2-5-3
图2-5-4 查询结果1
2.5.2 触发器”修改”及修改信息
(1)触发器”修改”代码
USE [企业人事管理系统]
GO
create trigger [修改]
on [dbo].[职员信息表]
for update
as
print '修改职员信息'
(2)修改信息代码及实施结果
UPDATE [企业人事管理系统].[dbo].[职员信息表]
SET [政治面貌ID] =001,[所任职位] ='经理'
,[现居地址] = '浙江'
,[联络方法] =
,[入职时间] = -9-4
WHERE 职员编号='11111'
图2-5-5
图2-5-6
2.5.3 触发器”删除”及删除信息
(1)触发器”删除”代码
USE [企业人事管理系统]
GO
create trigger [删除]
on [dbo].[职员信息表]
for delete
as
print '删除一条职员信息'
(2)删除信息代码及实施结果
DELETE FROM [企业人事管理系统].[dbo].[职员信息表]
WHERE 职员编号='11111'
图2-5-7
2.6 权限
权限管理是指安全帐号登录SQL Server以后,能够对数据库对象实施操作。
SQL Server包含两类权限:对象权限、语句权限。对象权限是针对表、视图和存放过程而言部分操作。语句权限关键指是否含有权限来实施某一语句。这些语句通常是部分含有管理系统能够操作,如:创建数据库、表和存放过程。
2.6.1 管理用户者权限
在此系统中,使用权限能够将管理者和用户拥有权限不一样,管理者能够对表进行Select、Update、Delete、Insert、reference等操作,对列进行Select 、Update等操作,对视图进行Select、Update、Delete、 Insert等操作,对存放过程进行Execute等操作。
相关管理者用户权限操作在前面触发器操作中已经有展现,在此只说明管理者用户权限创建及所授予权限。
(1)代码及方法
CREATE LOGIN [owner] WITH PASSWORD=111, DEFAULT_DATABASE=[master], DEFAULT_LANGUAGE=[简体汉字], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
GO
ALTER LOGIN [owner] DISABLE
图2-6-1
设置登录名为“owner“,选中SQL Server 身份验证,设置密码,取消”强制实施密码策略“复选框选中状态。
图2-6-2
单击左上角”用户映射“,在”映射到此登陆名用户“下方框中选择”企业人事管理系统“,以后在”数据库角色组员身份“下方框中选择”db_owner“和“public”,这么owner就有了企业人事管理系统数据库全部操作权限。
图2-6-3
图2-6-4
(2)授予权限
use 企业人事管理系统
go
grant select,insert,update,delete,execute to owner
图2-6-5
2.6.2用户者权限
用户者权限在此系统中,只能进行部分查询操作。
(1)代码及创建方法
CREATE LOGIN [users] WITH PASSWORD=000, DEFAULT_DATABASE=[master], DEFAULT_LANGUAGE=[简体汉字], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
GO
ALTER LOGIN [users] DISABLE
图2-6-6
图2-6-7
图2-6-8
(2)授予权限
use 企业人事管理系统
go
grant select to users
图2-6-9
(3)使用用户者权限对系统进行其它操作(在此做部分举例)
用户者权限没有修改表列权限
图2-6-10
图2-6-11
图2-6-12
用户者没有修改表内列信息权限
图2-6-13
此语句是要修改职员编号为00011职员政治面貌ID,因该用户不含有Update权限,所以无法修改该条信息。
当系统使用用户者权限时,我们所创建存放过程不会显示。
图2-6-14
3总结
伴随当今社会向信息化发展,人事管理信息化管理来越为各企机关所重视,它能有效地搜集、实施多种办公信息,极大地提升了办公效率,立即正确地实现信息上传下达,而计算机技术、网络技术、多种软件工作平台不停发展,又能够促进人事管理信息化管理加速实现。
本系统不足在于没有用可视化功效强大VB.NET作为开发工具,所以在操作上可能会使用户比较困难,但对于熟练SQL Server 起到一定作用。
在技术上因为对软件开发平台不够熟悉,很多组件及其之间联络掌握不够以至不能灵活利用,造成程序内容不丰富,使用不方便,其次在系统分析上在待加强训练,这次设计规模较小,但我在软件定义时期,尤其是在需求分析时,一度让我无从下手,所耗时间比开发时期全部长。
但收获还是梃大,在这次论文设计中,使我综合利用所学知识和技能对实际问题分析概括能力加强,经过检索文件资料、了解、学习、掌握本学科专业领域中新知识和发展动态,并合适地将其利用到论文中,同时让我深深体会到(软件)工程开发艰辛和乐趣,开发者必需态度端正,认真制订设计方案和工作计划,严格根据软件工程步骤完成设计各个步骤。
毫无疑问,这次毕业论文设计是对我本学期所学知识一次检测同时对我在以后学习中进行程序设计是有很大帮助作用。
4 致谢
从编写程序到确定汇报,历时十多天。在
展开阅读全文