二、er圖
注:總經理與經理的屬性er圖與員工相同
員工的職務屬性通過員工編號體現,規則見「職務表」
三、關係模式
系統中的實體有:總經理、經理、員工、部門、指標、工資
為簡化關係模式,將總經理、經理、員工的資訊集中到乙個表。關係模式如下:
職務表(職務名稱、職務編號、基本工資、基本獎金)
部門表(部門編號、部門名稱、經理編號、辦公**)
員工表(員工編號、員工姓名、部門編號、職務、出生日期、年齡、入職日期、性別、學歷、**)
考核表(員工編號、本月出勤次、本月業績、本月考核)
工資表(員工編號、基本工資、基本獎金、計算工資、所得稅、本月實發工資)
四、物理設計
職務表結構
說明:職務表為基本表,直接輸入資料。其中,職務編號a、b、c分別為總經理、經理、員工的員工編號的首字母(如,經理b01,員工c03)
部門表結構
說明:部門表為基本表,直接輸入資料。
員工表結構
說明:1、員工表與部門表有外來鍵聯絡,部門編號是部門表的主鍵;直接輸入資料
2、員工編號是主鍵,並有檢查約束,確認輸入的員工編號合理。具體是員工編號的首字母與職務對應的編號一致,如,總經理編號為axx,經理bxx,員工cxx
3、職務與規則「職務_rule」繫結,取值範圍(「總經理」「'經理」「員工」)
4、公式:年齡=year(getdate( ))-year(出生日期)
5、性別與規則「性別_rule」繫結,取值範圍(「男」「'女」)
6、學歷與規則「學歷_rule」繫結,取值範圍(「博士」「'碩士」「學士」),預設值學士
考核表結構
說明:1、考核表與員工表有外來鍵聯絡;用表約束定義聯合主鍵
2、本月考核為計算列,公式本月考核=本月業績*本月出勤次。建立儲存過程「insert考核表」實現輸入資料,
3、本月出勤次與預設「default 本月出勤次」繫結,預設值為30
工資表結構
說明:1、考核表與員工表有外來鍵聯絡;用表約束定義聯合主鍵
2、後三列為計算列,公式:
計算工資=基本工資+本月考核*基本獎金/50
所得稅=計算工資*0.05
本月實發工資=計算工資-所得稅
其中,本月考核是考核表中該員工對應的考核
建立儲存過程「insert工資表」實現輸入資料
五、系統實現
--建立資料庫"人力資源管理系統db"
create database 人力資源管理系統db
on( name=人力資源管理系統db_dat,
filename='e:\人力資源管理系統db_dat.mdf',
size=5120kb,
maxsize=102400kb,
filegrowth=1024kb
)log on
( name='人力資源管理系統db_log',
filename='e:\人力資源管理系統db_log.ldf',
size=1024kb,
maxsize=102400kb,
filegrowth=1024kb
)use 人力資源管理系統db
--建立表
create table 職務表
( 職務名稱 char(6) not null primary key,
職務編號 char(2) not null,
基本工資 int,
基本獎金 int,
)create table 部門表
( 部門編號 char(2) not null primary key,
部門名稱 char(6) not null,
經理編號 char(4),
經理** char(12)
)create table 員工表
( 員工編號 char(4) not null primary key,
員工姓名 char(6) not null,
部門編號 char(2),
職務 char(6),
性別 char(2) not null,
出生日期 datetime not null,
年齡 int,
入職日期 datetime not null,
學歷 char(4),
** char(12),
constraint fk_員工表_部門表_key
foreign key(部門編號)references 部門表(部門編號),
constraint fk_員工表_職務表_key
foreign key(職務)references 職務表(職務名稱)
)create table 考核表
( 員工編號 char(4) not null,
本月出勤次 int not null,
本月業績 int not null,
本月考核 int,
constraint pk_考核表_key primary key(員工編號,本月考核),
constraint fk_員工表_考核表_key
foreign key(員工編號)references 員工表(員工編號)
)create table 工資表
( 員工編號 char(4) not null,
基本工資 int not null,
基本獎金 int not null,
計算工資 int,
所得稅 int,
本月實發工資 int,
constraint pk_工資表_key primary key(員工編號,本月實發工資),
constraint fk_員工表_工資表_key
foreign key(員工編號)references 員工表(員工編號)
)--為員工表建立檢查約束,保證輸入的員工編號合理
alter table 員工表 with nocheck
add constraint ck_員工編號 check
(substring(員工編號,1,1)=
case
when 職務='總經理' then'a'
when 職務='經理' then'b'
when 職務='員工' then'c'
end)go--建立職務規則、學歷規則、性別規則,並與員工表繫結
create rule 職務_rule as @職務 in('總經理','經理','員工')
goexec sp_bindrule 職務_rule,'員工表.職務'
gocreate rule 學歷_rule as @學歷 in('博士','碩士','學士','大專')
goexec sp_bindrule 學歷_rule,'員工表.學歷'
gocreate rule 性別_rule as @性別 in('男','女')
goexec sp_bindrule 性別_rule,'員工表.性別'
go--建立學歷預設值約束,與員工表對應列繫結
create default 學歷_defa as'學士'
goexec sp_bindefault 學歷_defa,'員工表.學歷'
go--建立本月缺勤次預設值約束,與考核表對影列繫結
create default 本月出勤次_defa as'31'
goexec sp_bindefault 本月出勤次_defa,'考核表.本月出勤次'
go--輸入員工表、職務表、部門表資料
insert 職務表 values('總經理','a','50000','5000')
insert 職務表 values('經理','b','10000','5000')
insert 職務表 values('員工','c','3000','1000')
insert 部門表 values('d1','銷售部','b01','139
insert 部門表 values('d2','採購部','b02','138
insert 部門表 values('d3','人事部','b03','136
insert 部門表 values('d','總經理','a01','136
insert 員工表 values('a01','***','d','總經理','女碩士','')
insert 員工表 values('b01','','d1','經理','女博士','')
insert 員工表 values('b02','','d2','經理','女', '', '19', '','碩士','')
人力資源管理系統資料庫
組成員及所完成的工作 周宇晴所完成工作 er圖的繪製,資料庫的物理設計,資料庫上機實現,資料庫中資料的裝載 張雨薇所完成工作 er圖的繪製,er圖到關係模式的轉換,資料庫上機實現,資料庫的執行,作業的組織整理上傳 劉琴所完成工作 資料庫需求分析,er圖的繪製,資料庫上機實現 資料庫中資料的審核 一 ...
人力資源管理資料庫設計說明書
人力資源管理系統平台 資料庫設計說明書 編號 iss im rlzy 001 datadesign 版本 1.0 變更記錄 目錄1引言 5 1.1編寫目的 5 1.2背景 5 1.3術語定義 5 1.4參考資料 5 2外部設計 5 2.1識別符號和狀態 5 2.2使用它的程式 5 2.3約定 6 2...
人力資源管理系統
一 概述 通過網路人力資源管理系統對企業人力資源進行管理,使企業人力資源管理適應時代的發展要求,大大提高了企業的核心競爭力。二 系統分析 1 需求分析 全面管理企業的員工資訊 管理企業人力資源的基礎資訊 人才招聘管理及企業人才庫管理 企業人才培訓的全程跟蹤管理 提供企業員工考勤管理 設定企業員工薪酬...