




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、重慶科技學院數據庫原理課程設計報告 院(系:專業班級: 學生姓名: 學 號: 設計地點(單位)_逸夫科技樓_ _ _ _ 設計題目:_ 工資管理系統設計_ 完成日期: 2015年 06月 26日 指導教師評語: _ _ _ 成績(五級記分制):_ _ 指導教師(簽字):_ _設計題目:工資管理系統設計學生姓名第6組:學生姓名: 學號:課程名稱數據庫原理與應用課程設計專業班級計科2013-01,2,3,4地 點I301、I302起止時間2015.06.22-2015.06.26設計內容及要求 現需要開發一工資管理系統,描述與要實現功能如下: 為了保證系統具有高度的安全性,要有登錄界面,進行用戶身
2、份的驗證。用戶分為不同的級別,例如管理員級用戶和普通用戶。員工不同工種基本工資的設定:員工工種的不同,工資的標準也不同,允許管理員根據員工的現任職務設定員工的基本工資。包括每個員工的姓名、性別、年齡、工齡、職務及其所在的部門等資料的錄入來確定員工的基本工資,以及對現有工作人的基本信息的錄入工作。可以對員工的工資項目進行初始化的設置(包括個人所得稅、上月工資零頭、本月工資零頭、職務工資、級別工資、基本工資、工齡工資、獨子費、津貼補貼、離退費、交通費、電話費補貼。書報費補貼等人對系統管理員的密鑰,以及其他系統使用人員的一些信息,例如用戶名、權限、密鑰的設定。加班津貼的管理,根據加班的時間和類別給予
3、不同的加班津貼。根據月工資生成公式,按照員工的考勤情況和工作表現,生成員工工資。人員查詢操作包括按單個員工信息查詢、按部門查詢和按工資查詢等。員工年終獎金的生成。年終獎金計算公式(員工本年度的工資總和津貼的總和)/12。單位工資報表的生成。可以按照在每個月的每個固定時間生成該單位全體員工的月工資。對于月工資,能夠實現按照員工、部門、年、月進行統計分析,產生相應的報表,并可以打印輸出此報表。工資的發放,要求能夠實現銀行打卡的功能。工資轉賬的功能,包括轉賬設置、工資轉賬、工資憑證查詢、結轉下月的功能。要提供工資管理系統的幫助文件。(詳細的描述見課程設計指導書)內容與要求:1.現要求按照數據庫系統開
4、發步驟設計滿足以上功能的數據庫(更詳細描述見數據庫指導書),并寫出實現系統功能的視圖、觸發器或存儲過程。2.撰寫課程設計報告,課程設計報告中應包括其設計數據庫的過程:1)系統需求分析2)數據庫概念結構設計:要求用PowerDesigner畫出系統E-R圖;3)邏輯結構設計:要求用PowerDesigner生成物理模型圖,得到關系模式,并生成對應的數據字典;4)物理結構設計:用PowerDesigner把以上關系模式生成數據庫(導出數據庫腳本); 5)數據操作過程:寫出為每個關系進行增、刪、改、查、的腳本(每個關系,至少兩條對應的腳本語句);6)視圖、存儲過程、觸發器設計:創建對應系統功能可能用
5、到的視圖,并顯示結果,或系統可能用到的存儲過程,觸發器等。設計參數至少5個表結構;3個存儲過程;2個觸發器;3個視圖。進度要求15.5 講課 閱讀分析任務書 16.2 需求分析 概念結構設計16.3 邏輯結構設計 物理結構設計16.4 視圖、存儲過程、觸發器設計撰寫報告16.5 交設計報告書備注:16周周一放假,所以15周周五下達設計任務書。參考資料1雷亮等數據庫原理課程設計指導書2王珊、薩師煊數據庫系統概述(第四版) 北京:高等教育出版社2006。3C.J.Date著孟小峰、王珊等譯數據庫系統導論(第8版) 北京:機械工業出版社.2007。4陳根才等. 數據庫課程設計浙江浙江大學出版社200
6、7其它摘要 在現代企業管理中,企業信息化是提高企業管理效率的重要手段。工資管理是企業管理的重要部分,在公司起著越來越重要作用。本課程設計主要是對公司各項人員的工資進行管理和統計。 工資管理系統分為6個模塊,基本信息管理模塊、考勤信息管理模塊、獎懲信息管理模塊、員工履歷管理模塊、職稱信息管理模塊、員工工資管理模塊。本系統采用SQL Server 2008作為數據庫,使用ODBC作為數據源。在實現數據庫部分功能時按照要求創建了觸發器和存儲過程。關鍵詞: 工資管理 SQL Server 2008 觸發器 存儲過程目錄摘要I1 需求分析11.1 系統目標設計11.2 系統功能分析11.3 功能模塊分析
7、21.4 系統全局數據流圖31.5 數據字典32 概念結構設計72.1 構成系統的實體型72.2 工資管理系統E-R圖73 邏輯結構設計93.1邏輯結構簡介93.2 關系模型94物理模型設計114.1定義數據庫114.2 創建表114.3 創建存儲過程144.4 創建觸發器17總結19致謝20參考文獻211 需求分析1.1 系統目標設計實現企業的工資管理系統化,使企業管理更加現代化1.2 系統功能分析(1):為了保證系統具有高度的安全性,要有登錄界面,進行用戶身份的驗證。用戶分為不同的級別,例如管理員級用戶和普通用戶。 (2):員工不同工種基本工資的設定:員工工種的不同,工資的標準也不同,允許
8、管理員根據員工的現任職務設定員工的基本工資。包括每個員工的姓名、性別、年齡、工齡、職務及其所在的部門等資料的錄入來確定員工的基本工資,以及對現有工作人的基本信息的錄入工作。(3):可以對員工的工資項目進行初始化的設置(包括個人所得稅、職務工資、級別工資、基本工資、工齡工資。對系統管理員的密鑰,以及其他系統使用人員的一些信息,例如用戶名、權限、密鑰的設定。(4):根據月工資生成公式,按照員工的考勤情況和工作表現,生成員工工資。人員查詢操作包括按單個員工信息查詢、按部門查詢和按工資查詢等。 (5):工年終獎金的生成。年終獎金計算公式(員工本年度的工資總和津貼的總和)/12。1.3 功能模塊分析 根
9、據系統功能的基本要求,可對整個系統劃分為幾個模塊工資管理系統基本信息管理考勤信息管理獎懲記錄管理員工履歷管理職稱信息管理工資信息管理系統管理員工基本信息錄入及維護員工基本信息的查詢考勤信息的錄入與維護員工考勤信息的查詢獎懲信息的錄入與維護員工獎懲信息的查詢員工履歷的錄入與維護員工履歷信息的查詢職稱評定的錄入與維護職稱評定的查詢工資的錄入與維護工資的查詢用戶賬號管理系統數據備份圖1.1 功能模塊分析1.4 系統全局數據流圖 系統的全局數據流圖,也稱第一層數據流圖,是從整體上描述系統的數據流,反映系統數據的整體流向,給設計者、開發者和用戶一個總體描述。圖1.2 數據流圖1.5 數據字典表1.1 員
10、工基本信息表(Base_data)名稱數據類型說明Worker_IDvarchar(15)員工編號 關鍵字Worker_Namevarchar(8)員工姓名Department_Namevarchar(15)部門名稱Sexvarchar(2)性別Birthdaydatetime出生日期Native_Placevarchar(25)籍貫School_Agevarchar(4)學歷Majorvarchar(15)專業表1.2 考勤信息記錄表(Check_info)名稱數據類型說明Worker_IDVarchar(15)員工編號 關鍵字Worker_Namevarchar(8)員工姓名Monthsv
11、archar(10)月份編號 關鍵字Months_daysint本月天數Holidaysint公休假天數Work_daysint出勤天數Business_daysint出差天數Absent_daysint缺席天數Leave_daysint請假天數Late_daysint遲到天數Leave_early_timesint早退天數表1.3 工資信息表(Wage_info)名稱數據類型說明Record_IDbigint記錄編號 關鍵字Worker_IDvarchar(15)員工編號Worker_NameVarchar(8)員工姓名Base_Wagefloat基本工資Allowance1float公共補
12、貼Allowance2float出差補貼Rewardfloat獎金Overtime_Moneyfloat加班費Deduct_Checkfloat扣考核Aged_Moneyfloat養老保險Income_taxfloat 所得稅Dutyvarchar(10)擔任職務表1.4 獎懲記錄表(Reward_pun)名稱數據類型說明Record_IDbigint記錄編號 關鍵字Worker_IDvarchar(15)員工編號Worker_Namevarchar(8)員工姓名Record_datedatetime獎懲日期Record_typevarchar(2)獎懲類型Record_contentvarc
13、har(30)獎懲內容Record_reasonvarchar(30)獎懲原因Allow_unitvarchar(20)批準單位Remarkvarchar(200)備注 表1.5 職稱評定信息表(Pro_title)名稱數據類型說明Worker_IDvarchar(15)員工編號 關鍵字Worker_Namevarchar(8)員工姓名Assess_datedatetime評定日期Assess_unitvarchar(20)評定單位Assess_titlevarchar(8)評定職稱Remarkvarchar(200)備注表1.6 工作履歷表(Work_age)名稱數據類型說明Record_I
14、DBigint記錄編號 關鍵字Worker_IDvarchar(15)員工編號Worker_Namevarchar(8)員工姓名Begin_datedatetime起始日期Over_datedatetime結束日期Unit_Namevarchar(20)單位名稱Work_timefloat本單位工作時間Dutyvarchar(10)擔任職務Level1varchar(4)級別Remarkvarchar(200)備注表1.6 用戶賬號表(User_table)名稱數據類型說明User_Namevarchar(30)用戶名 關鍵字User_pwdvarchar(30)用戶密碼Power_level
15、varchar(8)權限級別2 概念結構設計2.1 構成系統的實體型由工資管理系統的數據流圖和數據字典,抽取出系統的7個主要實體,包括:員工、考勤記錄、工資、獎懲記錄、職稱評定信息、履歷、賬號。員工實體型屬性:Worker_ID Worker_Name Department_Name Sex Birthday Native_Place School_Age Major Link_Phone Address考勤記錄實體型屬性:Worker_ID Worker_Name Months Months_days Holidays Work_days Business_days Absent_days
16、Leave_days Late_days Leave_early_times工資實體型屬性: Record_ID Worker_ID Worker_Name Base_Wage Allowance1 Allowance2 Reward Overtime_Money Deduct_Check Aged_Money Medical_Money Compo_Money Unemploy_Money Housing_Money Income_tax Real_wage Give_date獎懲記錄實體型屬性: Record_ID Worker_ID Worker_Name Record_date Rec
17、ord_type Record_content Record_reason Allow_unit Remark職稱評定信息實體型屬性: Worker_ID Worker_Name Assess_date Assess_unit Assess_title Remark履歷實體型屬性: Record_ID Worker_ID Worker_Name Begin_date Over_date Unit_Name Work_time Duty Level1 Remark賬號實體型屬性: User_Name User_pwd Power_level2.2 工資管理系統E-R圖圖2.1 工資管理系統E-R
18、圖3 邏輯結構設計3.1邏輯結構簡介邏輯結構設計就是把概念結構設計階段設計好的基本E-R圖轉換為與選用DBMS產品所支持的數據模型相符合的邏輯結構。 設計邏輯結構一般分為3步進行:(1) 將概念結構轉換為一般的關系、網狀、層次模型;(2) 將轉換來的關系、網狀、層次模型向特定DBMS支持下的數據模型轉換;(3) 對數據模型進行優化。3.2 關系模型 將E-R圖轉換為關系模型實際上就是要獎實體型、實體的屬性和實體型之間的聯系轉換為關系模式,這種轉換一般遵循如下原則:一個實體型轉換為一個關系模式,一個多對多的關系可以轉化為一個關系模式,而一對多的關系可以融合在其他的相關的關系模式中。例如: (1)
19、 員工與履歷之間是一對多的關系,所以將員工和履歷以及屬于關系設計成以下關系模式:員工(Worker_ID Worker_Name Department_Name Sex Birthday Native_Place School_Age Major Link_Phone Address)獎懲記錄(Record_ID Worker_ID Worker_Name Record_date Record_type Record_content Record_reason Allow_unit Remark) 屬于(Worker_ID Worker_Name Department_Name Sex Bir
20、thday Native_Place School_Age Major Link_Phone Address Record_ID Record_date Record_type Record_content Record_reason Allow_unit Remark ) (2) 員工與賬號之間是一對一的關系,所以將員工和賬號以及屬于關系設計成以下關系模式: 員工(Worker_ID Worker_Name Department_Name Sex Birthday Native_Place School_Age Major Link_Phone Address) 賬號 (User_Name
21、User_pwd Power_level) 屬于(Worker_ID Worker_Name Department_Name Sex Birthday Native_Place School_Age Major Link_Phone Address User_pwd Power_level ) 4物理模型設計數據庫物理設計是將邏輯設計影射到存儲介質上,利用可用的硬件和軟件功能盡可能快地對數據進行物理訪問和維護。4.1定義數據庫SQL Server 2000數據庫文件分為3中類型:主數據文件、次數據文件和日志文件。通過SQL語言進行數據庫創建,創建數據庫的語句如下:Create database
22、 工資管理系統;4.2 創建表創建員工基本信息表 Base_data CREATE TABLE Base_data ( Worker_ID varchar(15) PRIMARY KEY,/*員工ID ,主碼*/ Worker_Name varchar(8) Not null,/*員工姓名*/ Department_Name varchar(15) Not null,/*部門名稱*/ Sex varchar(2) Not null,/*性別*/ Birthday datetime Not null,/*出生日期*/ Native_Place varchar(25) Not null,/*籍貫*
23、/ School_Age varchar(4) Not null,/*學歷*/ Major varchar(15) Not null,/*專業*/ Link_Phone varchar(11) Not null,/*聯系電話*/ Address varchar(20) Not null,/*住址*/ );考勤信息記錄表 Check_info CREATE TABLE Check_info( Months varchar(10) , Worker_ID varchar(15), Months_days int, /*本月天數*/ Holidays int, /*公休假天數*/ Work_days
24、 int, /*出勤天數*/ Business_days int,/*出差天數*/ Absent_days int,/*缺席天數*/ Leave_days int,/*請假天數*/ Late_days int,/*遲到天數*/ Leave_early_times int,/*早退天數*/ PRIMARY KEY (Months,Worker_ID), FOREIGN KEY (Worker_ID) REFERENCES Base_data(Worker_ID),);工資信息表 Wage_info CREATE TABLE Wage_info ( Record_ID bigint PRIMARY
25、 KEY,/*記錄編號*/ Worker_ID varchar(15), Worker_Name varchar(8), Base_Wage float,/*基本工資*/ Allowance1 float, /*公共補貼*/ Allowance2 float,/*出差補貼*/ Reward float, /*獎金*/ Overtime_Money float, /*加班費*/ Deduct_Check float, /*扣考核*/ Aged_Money float, /*養老保險*/ Medical_Money float, /*醫療保險*/ Compo_Money float, /*工傷保險
26、*/ Unemploy_Money float, /*失業保險*/ Housing_Money float, /*住房公積金*/ Income_tax float, /*所得稅*/ Real_wage float, /*實發工資*/ Give_date float, /*發放月份*/ FROEIGN KEY (Worker_ID) REFERENCES Base_data(Worker_ID),);獎懲記錄表(Reward_pun) CREATE TABLE Reward_pun( Record_ID bigint PRIMARY KEY,/*記錄編號*/ Worker_ID varchar(
27、15), Worker_Name varchar(8), Record_date datetime,/*獎懲日期*/ Record_type varchar(2),/*獎懲類型*/ Record_content varchar(30),/*獎懲內容*/ Record_reason varchar(30),/*獎懲原因*/ Allow_unit varchar(20),/*批準單位*/ Remark varchar(200),/*備注 */ FORERGN KEY (Worker_ID) REFERENCES Base_data(Worker_ID),);職稱評定信息表 Pro_title CR
28、EATE TABLE Pro_title( Worker_ID varchar(15) PRIMARY KEY,/*員工編號*/ Worker_Name varchar(8), Assess_date datetime,/*評定日期*/ Assess_unit varchar(20),/*評定單位*/ Assess_title varchar(8),/*評定職稱*/ Remark varchar(200),/*備注*/);工作履歷表 Work_age CREATE TABLE Work_age( Record_ID Bigint PRIMARY KEY,/*記錄編號*/ Worker_ID v
29、archar(15), Begin_date datetime,/*起始日期*/ Over_date datetime,/*結束日期*/ Unit_Name varchar(20),/*單位名稱*/ Work_time float,/*本單位工作時間*/ Duty varchar(10),/*擔任職務*/ Level1 varchar(4),/*級別*/ Remark varchar(200),/*備注*/ FORERGN KEY (Worker_ID) REFERENCES Base_data(Worker_ID),);用戶賬號表 User_table CREATE TABLE User_t
30、able( User_Name varchar(30) PRIMARY KEY,/*用戶名*/ User_pwd varchar(30),/*用戶密碼*/ Power_level varchar(8),/*權限級別*/);4.3 創建存儲過程在獎懲記錄表中創建更新獎懲的存儲過程:USE salaryGOCREATE PROCEDURE update_獎懲記錄表_1(Record_ID_1 bigint, Record_ID_2 bigint, Worker_ID_3 varchar(15), Worker_Name_4 varchar(8), Record_date_5 datetime, R
31、ecord_type_6 varchar(2), Record_content_7 varchar(30), Record_reason_8 varchar(30), Allow_unit_9 varchar(20)AS UPDATE salary.dbo.獎懲記錄表 SET Record_ID = Record_ID_2, Worker_ID = Worker_ID_3, Worker_Name = Worker_Name_4, Record_date = Record_date_5, Record_type = Record_type_6, Record_content = Record_
32、content_7, Record_reason = Record_reason_8, Allow_unit = Allow_unit_9 WHERE ( Record_ID = Record_ID_1)在員工基本信息表上創建一個插入員工信息的存儲過程:USE salaryGOCREATE PROCEDURE insert_員工基本信息表_2(Worker_ID_1 varchar(15), Archives_ID_2 varchar(10), Worker_Name_3 varchar(8), Department_Name_4 varchar(10), Sex_5 varchar(2),
33、Birthday_6 datetime, Native_Place_7 varchar(25), School_Age_8 varchar(4), Major_9 varchar(15), Graduate_Sch_10 varchar(10), Come_Time_11 datetime, Link_Phone_12 varchar(11), Address_13 varchar(20), Remark_14 varchar(200)AS INSERT INTO salary.dbo.員工基本信息表 ( Worker_ID, Archives_ID, Worker_Name, Departm
34、ent_Name, Sex, Birthday, Native_Place, School_Age, Major, Graduate_Sch, Come_Time, Link_Phone, Address, Remark) VALUES ( Worker_ID_1, Archives_ID_2, Worker_Name_3, Department_Name_4, Sex_5, Birthday_6, Native_Place_7, School_Age_8, Major_9, Graduate_Sch_10, Come_Time_11, Link_Phone_12, Address_13, R
35、emark_14)在用戶賬號表上建立一個刪除用戶賬號的存儲過程:USE salaryGOCREATE PROCEDURE delete_用戶賬號表_1(User_Name_1 varchar)AS DELETE salary.dbo.用戶賬號表 WHERE ( User_Name = User_Name_1) 4.4 創建觸發器 定義一個BEFORE行級的觸發器,為工資信息表Wage_info定義完整性規則“總經理的基本工資不得低于6000元,如果低于6000元,剛自動改為6000元”。 CREATE TRIGGER Insert_or Update_Wage BEFORE INSERT OR UPDATE ON Wage_info FOR EACH ROW AS BEGIN IF(new.Duty='總經理') AND (new.Base_Wage<6000) THEN new.Base_Wage=6000; END IF; END; 定義一個AFTER行級觸發器,當用戶賬號
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 超神數學-高考數學總復習拔高篇(二輪)專題2周期函數與類周期函數(含答案或解析)
- 房地產行業報告:百強房企拿地優于去年市場延續分化
- 部編版語文五年級下冊《習作-神奇的探險之旅》課件
- PEEK行業深度:“機器人浪潮”下的特種塑料“弄潮兒”
- 2025年農業灌溉用水高效利用的節水灌溉設備市場分析報告
- 新零售時代下的連鎖藥店擴張路徑與數字化運營模式研究報告
- 汽車行業供應鏈全球化背景下的韌性構建與風險管理報告
- 大數據與社交媒體融合的2025年精準營銷策略研究報告
- 金融行業2025年反欺詐技術革新與大數據融合應用報告
- 2025年多式聯運信息平臺物流企業國際化發展與拓展報告
- 2023版浙江評審衛生高級專業技術資格醫學衛生刊物名錄
- 天津地理會考知識要點精華版
- GB/T 1689-1998硫化橡膠耐磨性能的測定(用阿克隆磨耗機)
- GB/T 16823.3-2010緊固件扭矩-夾緊力試驗
- 江蘇省金陵中學2023學年物理高一下期末調研試題(含答案解析)
- 2023年合肥城建發展股份有限公司校園招聘筆試模擬試題及答案解析
- DB11-T1834-2021 城市道路工程施工技術規程高清最新版
- 廣東省珠海市2022-2023高一物理下學期期末學業質量檢測試題
- 小學語文擴句、縮句專題
- PDCA降低I類切口感染發生率
- 人類能源史課件
評論
0/150
提交評論