《數(shù)據(jù)庫課程設計 企業(yè)人事管理信息系統(tǒng)》由會員分享,可在線閱讀,更多相關《數(shù)據(jù)庫課程設計 企業(yè)人事管理信息系統(tǒng)(12頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、
經(jīng)濟管理學院
SQL Server課程設計報告
院 系: 經(jīng)濟管理學院
專 業(yè): 網(wǎng)絡營銷
學 號: 1040412120
姓 名: 沈簫慧
指導教師: 盛永祥
2012 年 6月 15日
1.系統(tǒng)開發(fā)背景
企業(yè)人事管理信息系統(tǒng)是一個現(xiàn)代化的企業(yè)在競爭中立于不敗之地的必要部分,它能夠為查詢?nèi)耸滦畔⑻峁┏渥愕男畔⒑涂旖莸牟樵兪侄?。一些公司一直以來使用傳統(tǒng)人工的方式管理文件檔案,這種管理方式存在
2、著許多缺點,如:效率低、保密性差,另外時間一長,將產(chǎn)生大量的文件和數(shù)據(jù),這對于查找、更新和維護都帶來了不少的困難,而且容易丟失。
使用計算機對企業(yè)人事信息進行管理,具有著手工管理所無法比擬的優(yōu)點。例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高企業(yè)人事管理的效率,也是企業(yè)的科學化、正規(guī)化管理,與世界接軌的重要條件。
本系統(tǒng)可以通過提出查詢請求(執(zhí)行SQL語句),服務器完成對數(shù)據(jù)庫的查詢?nèi)蝿?,并可以完成一下功能?
(1)對員工各種信息的輸入,包括員工的基本信息、學歷信息、婚姻狀況信息、職稱等。
員工各種信息的修改;
(2) 對于轉(zhuǎn)
3、出、辭職、辭退、退休員工信息的刪除;
(3)按照一定的條件,查詢、統(tǒng)計符合條件的員工信息;至少應該包括每個員工詳細信息的查詢;
(4)按婚姻狀況查詢、按學歷查詢、按工作崗位查詢等,至少應該包括按學歷、婚姻狀況、崗位、參加工作時間等統(tǒng)計各自的員工信息;
通過本系統(tǒng)把查詢結(jié)果,統(tǒng)計結(jié)果返回給用戶,使用戶快速準確的了解公司人事信息。
2. 需求分析
一個公司必將分為若多個部門,包括人事部,車間,研發(fā)部等,各個部門的工作責任不同,它們完成不同的任務,各盡其職,使公司能夠有條不紊的開展。工作人事部負責人事管理及人才調(diào)用,車間負責生產(chǎn),研發(fā)部負責開發(fā)新產(chǎn)品等等,每個部門的人數(shù)也不一樣
4、。每個部門將有若干職位,人事部有部長,秘書,副部長,部長助理等職位,車間有廠長,車工,主管等職位,研發(fā)部有部長,秘書,副部長,部長助理等職位。每個職位有不同的員工來當任,員工的工號,員工姓名,出生年月,性別,婚姻狀況,職位,工作時間組成員工信息。這樣人事部門就能夠很快掌握員工的信息,能夠發(fā)現(xiàn)人才提拔人才。根據(jù)已婚員工的配偶信息可以很快掌握員工的家庭信息。
職位,職權(quán)
公 司
人事部
研發(fā)部
車間
員 工
職位,職權(quán)
職位,職權(quán)
通過分析,可以設計下面的數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu):
企業(yè)部門信息 :部門 ,員工人數(shù),主管工作
5、企業(yè)工作崗位信息:工號,學歷,部門,職位
員工基本信息:工號,員工姓名,出生年月,性別,婚姻狀況,職位,工作時間,電話
3.概念結(jié)構(gòu)設計
實體間的聯(lián)系如下:
(1)一個公司有很多部門,各個部門的主管工作不同,每個部門的人數(shù)也不一樣,部門和公司是多對一的關系,因此可以用部門信息來反映這個公司各個部門的責任情況。
(2)一個公司有很多工作崗位,各個崗位有不同的人來負責,職位對于各個部門是多對一的關系,所以可以用工作崗位信息來表示每個員工的職位信息。
(3)每個員工都有自己的個人基本信息,每個員工的學歷信息及已婚的員工的配偶信息也不同,學歷信息及已婚的員工的配偶信息與各
6、個員工是一對一的關系。
4. 邏輯結(jié)構(gòu)設計
人事管理系統(tǒng)中關系模式集如下:
員工基本信息(工號,員工姓名,出生年月,性別,婚姻狀況,職位,工作時間,電話),主鍵為工號。
員工配偶信息(工號,配偶姓名, 出生年月,工作單位,電話),主鍵為工號。
員工學歷信息(工號,員工姓名,學歷,畢業(yè)學校,專業(yè),畢業(yè)時間,外語情況),主鍵為工號。
企業(yè)工作崗位信息(工號,學歷,部門,職位),主鍵為工號+部門。
企業(yè)部門信息 (部門 ,員工人數(shù),主管工作),主鍵為部門。
5.物理結(jié)構(gòu)設計
(1) 數(shù)據(jù)結(jié)構(gòu):設置每一數(shù)據(jù)表的屬性名,類型,寬度。
7、 (2)設置參照屬性:
員工配偶信息(工號,配偶姓名, 出生年月,工作單位,電話)的工號參照員工基本信息的工號。
員工學歷信息(工號,員工姓名,學歷,畢業(yè)學校,專業(yè),畢業(yè)時間,外語情況)的工號參照員工基本信息的工號。
企業(yè)工作崗位信息(工號,學歷,部門,職位)的工號參照員工基本信息的工號,部門參照企業(yè)部門信息的部門
(3)關系:
員工基本信息與員工配偶信息建立關于工號的父子關系。
員工基本信息與員工學歷信息建立關于工號的父子關系。
員工基本信息與企業(yè)工作崗位信息建立關于工號的父子關系。
8、 企業(yè)工作崗位信息與員工基本信息建立關于工號的父子關系。
企業(yè)工作崗位信息與企業(yè)部門信息建立關于部門的父子關系。
(4)數(shù)據(jù)庫名稱:人事管理系統(tǒng)。
邏輯數(shù)據(jù)名稱:人事管理系統(tǒng)。
數(shù)據(jù)文件:人事管理.mdf,初始大?。?MB,最大空間:20MB,增加量:2MB。
日志文件:人事管理_log.ldf,初始大小:2MB,最大空間:20MB,增加量:2MB。
備份設備名:rsxtbf,備份文件:rsbf.bak
(5)索引:對于每一數(shù)據(jù)表關于主關鍵字建立索引文件。
(6)設置觸發(fā)
9、器:
要求員工基本信息中的工號被修改時,員工配偶信息表和員工學歷信息表及企業(yè)工作崗位信息中的工號都被修改。
要求在員工基本信息中插入新的工號時,員工配偶信息表和員工學歷信息表及企業(yè)工作崗位信息中的工號都被插入新的工號。
要求在員工基本信息中刪除工號時,員工配偶信息表和員工學歷信息表及企業(yè)工作崗位信息中的工號都被刪除工號。
(7)設置視圖:
為用戶提供包含工號,員工姓名,出生年月,性別,學歷,婚姻狀況,職位,工作時間的視圖。
(8)設置存儲過程:
根據(jù)用戶所提交的學歷,為用戶提供關于員工姓
10、名,性別,婚姻狀況,工作時間,部門,職位,電話的信息。
根據(jù)用戶所提交的婚姻狀況,為用戶提供關于員工姓名,性別,學歷,工作時間,部門,職位,電話的信息。
根據(jù)用戶所提交的職位,為用戶提供關于員工姓名,性別,婚姻狀況,學歷,工作時間,部門,電話的信息。
6.源程序代碼
6.1 數(shù)據(jù)庫程序
create database 人事管理系統(tǒng)
on primary
(name=人事管理,
filename=d:\renshi\人事管理.mdf,
size=2,
11、 maxsize=20,
filegrowth=2)
log on
(name=人事管理_log,
filename=d:\renshi\人事管理_log.ldf,
size=2,
maxsize=20,
filegrowth=2)
6.2 備份程序
sp_addumpdevice disk,rsxtbf,d:\beifen\rsbf.bak
go
backup database 人事管理系統(tǒng) to rsbf
6.3 表程序
create table 員工基本信息
12、 ( 工號 char(5) defaultj0000,
員工姓名 char(8),
出生年月 datetime,
性別 char(3),
婚姻狀況 char(4),
職位 char(20),
工作時間 datatime,
電話 char(11),
check(性別 in (男,女)),
primary key(工號))
create table 員工配偶信息
(工號 c
13、har(5),
配偶姓名 char(8),
出生年月 datetime,
工作單位 char(20),
電話 char(11),
foreign key(工號) references 員工基本信息(工號))
create table 員工學歷信息
( 工號 char(5),
員工姓名 char(8),
學歷 char(12),
畢業(yè)學校 char(30),
專業(yè) char(12),
14、
畢業(yè)時間 datetime,
外語情況 char(6),
foreign key(工號) references 員工基本信息(工號))
create table 企業(yè)工作崗位信息
( 工號 char(5),
學歷 char(10),
部門 char(10),
職位 char(20),
foreign key(工號) references 員工基本信息(工號),
foreign key(部門) r
15、eferences 企業(yè)部門信息(部門))
create table 企業(yè)部門信息
(部門 char(10),
員工人數(shù) int,
主管工作 char(20),
primary key(部門))
6.4 視圖
create view 員工信息視圖(工號,員工姓名,出生年月,性別,學歷,婚姻狀況,職位,工作時間)
as select.員工基本信息.工號,員工基本信息.員工姓名,出生年月,性別,學歷,婚姻狀況,職位,工作時間
from 員工基本信息,員工學歷信息
where 員工基本信息.工號=員工學歷信息.工
16、號
6.5 存儲過程
1.關于學歷的存儲過程
create procedure yg
@xl varchar(8)=null
as if @xl is null
print 請輸入學歷!
else
select 員工姓名,性別,婚姻狀況,工作時間,部門,企業(yè)工作崗位信息.職位,電話
from 員工基本信息,員工學歷信息,企業(yè)崗位信息
where 員工基本信息.工號=員工學歷信息.工號 and 企業(yè)工作崗位信息.工號=員工學歷信息.工號
2. 關于婚姻狀況的存儲過程
create
17、procedure yg1
@hy varchar(8)=null
as if @hy is null
print請輸入婚姻狀況
else
select 員工基本信息.員工姓名,性別,學歷,工作時間,部門,企業(yè)工作崗位信息.職位,電話
from 員工基本信息,員工學歷信息,企業(yè)工作崗位信息
where 員工基本信息.工號=員工學歷信息.工號 and 企業(yè)工作崗位信息.工號=員工學歷信息.工號
3. 關于職位的存儲過程
create procedure yg2
@zw varchar(8)=null
as if @zw is null
18、
print請輸入職位
else
select 員工基本信息.員工姓名,性別,婚姻狀況,學歷,工作時間,部門,電話
from 員工基本信息,員工學歷信息,企業(yè)工作崗位信息
where 員工基本信息.工號=員工學歷信息.工號 and 企業(yè)工作崗位信息.工號=員工學歷信息.工號
6.6 觸發(fā)器
1.修改工號的觸發(fā)器
create trigger goha on 員工基本信息
for update
as
begin
if(columns_updated()&01)>0
update 員工配偶信息
set 員工
19、配偶信息.工號=(select a.工號 from inserted a)
where 員工配偶信息.工號=(select b.工號 from deleted b)
update 員工學歷信息
set 員工學歷信息.工號=(select a.工號 from inserted a)
where 員工學歷信息.工號=(select b.工號 from deleted b)
update 企業(yè)工作崗位信息
set 企業(yè)工作崗位信息.工號=(select a.工號 from inserted a)
where 企
20、業(yè)工作崗位信息.工號=(select b.工號 from deleted b)
end
2.插入新工號的觸發(fā)器
create trigger jbinsert
on 員工基本信息
for insert as
if(columns_updated()&1)>0
begin
insert into 員工配偶信息(工號)
select 工號
from inserted
insert into 員工學歷信息(工號,員工姓名)
select 工號,員工姓名
from inserted
insert into
21、企業(yè)工作崗位信息(工號)
select 工號
from inserted
end
3.刪除工號的觸發(fā)器
create trigger check_delete
on 企業(yè)工作崗位信息
for delete
as
begin
delete 員工學歷信息
where 員工學歷信息.工號=(select 工號 from deleted)
delete 員工配偶信息
where 員工配偶信息.工號=(select 工號 from deleted)
delete 員工基本信息
where 員工基本信
22、息.工號=(select 工號 from deleted)
end
7.數(shù)據(jù)庫表及時視圖截圖
8.結(jié)束語
在盛永祥老師的指導下,運用老師課堂上講的知識,我設計出了一個可以查詢?nèi)耸滦畔⒐芾硐到y(tǒng)。這次課程設計是對這學期數(shù)據(jù)庫課程的一個知識綜合,它需要運用到前面所學的知識。通過這次課程設計,使我將平時所學的知識運用到實踐中,提高了自己實際上機操作的能力。在實際操作中發(fā)現(xiàn)平時的知識的不足??傊@是對平時掌握知識的一次檢驗,也是一次對平時不足的彌補。感謝盛老師這學期對課本知識和做人為事的教導.使我們在輕松愉快中掌握了數(shù)據(jù)庫的基本操作。忠心的謝謝!