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