數(shù)據(jù)庫課程設(shè)計(jì)-中小型企業(yè)工資管理的設(shè)計(jì)與實(shí)現(xiàn)(共22頁)_第1頁
數(shù)據(jù)庫課程設(shè)計(jì)-中小型企業(yè)工資管理的設(shè)計(jì)與實(shí)現(xiàn)(共22頁)_第2頁
數(shù)據(jù)庫課程設(shè)計(jì)-中小型企業(yè)工資管理的設(shè)計(jì)與實(shí)現(xiàn)(共22頁)_第3頁
數(shù)據(jù)庫課程設(shè)計(jì)-中小型企業(yè)工資管理的設(shè)計(jì)與實(shí)現(xiàn)(共22頁)_第4頁
數(shù)據(jù)庫課程設(shè)計(jì)-中小型企業(yè)工資管理的設(shè)計(jì)與實(shí)現(xiàn)(共22頁)_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上課程設(shè)計(jì)說明書課程設(shè)計(jì)名稱 數(shù)據(jù)庫原理課程設(shè)計(jì) 專 業(yè) 計(jì)算機(jī)科學(xué)與技術(shù) 班 級 學(xué)生姓名 唐作鵬 指導(dǎo)教師 姚慶安 2017 年 1 月 9 日課 程 設(shè) 計(jì) 任 務(wù) 書課程設(shè)計(jì)題目:中小型企業(yè)工資管理的設(shè)計(jì)與實(shí)現(xiàn)起止日期:2017.1.92017.1. 13設(shè)計(jì)地點(diǎn):計(jì)算機(jī)學(xué)院實(shí)驗(yàn)室主要業(yè)務(wù)描述:要求設(shè)計(jì)一套中小型企業(yè)工資管理方案,其中應(yīng)具有一定的人事檔案管理功能。在考慮具體中小型企業(yè)工資管理的業(yè)務(wù)處理過程中,還需要重點(diǎn)考慮如下業(yè)務(wù)處理過程:(1)工資管理系統(tǒng)是企業(yè)進(jìn)行管理的不可缺少的一部分,它是建立在人事檔案系統(tǒng)之上的,其職能部門是財(cái)務(wù)處和會(huì)計(jì)室。(2)通過對職

2、工建立人事檔案,根據(jù)其考勤情況以及相應(yīng)的工資級別,算出其相應(yīng)的工資。為了減少輸入帳目時(shí)的錯(cuò)誤,可以根據(jù)職工的考勤、職務(wù)、部門和各種稅費(fèi)自動(dòng)求出工資。(3)為了便于企業(yè)領(lǐng)導(dǎo)掌握本企業(yè)的工資信息,在系統(tǒng)中應(yīng)加入各種查詢功能,包括個(gè)人信息、職工工資、本企業(yè)內(nèi)某一個(gè)月或某一部門的工資情況查詢,系統(tǒng)應(yīng)能輸出各類統(tǒng)計(jì)報(bào)表。設(shè)計(jì)要求:1、 根據(jù)該業(yè)務(wù)過程示意圖繪制數(shù)據(jù)流圖、畫出E-R圖(屬性按自己的理解設(shè)定,但一定要有員工基本信息、工資編號、發(fā)放月份、應(yīng)發(fā)工資、實(shí)發(fā)工資等信息);2、 再將其轉(zhuǎn)換成關(guān)系模式(要求達(dá)到3NF);寫出創(chuàng)建各表的SQL語句(要含主鍵、外部鍵及其它的完整性定義),并指出各表應(yīng)建哪些索

3、引信息。注:此任務(wù)書由指導(dǎo)教師在課程設(shè)計(jì)前填寫,發(fā)給學(xué)生作為本課程設(shè)計(jì)的依據(jù)。課程設(shè)計(jì)成績考核表學(xué)院計(jì)算機(jī)科學(xué)與工程專業(yè)計(jì)算機(jī)科學(xué)與技術(shù) 班級 學(xué)生姓名 唐作鵬課程名稱:數(shù)據(jù)庫原理課程設(shè)計(jì)課程設(shè)計(jì)題目:中小型企業(yè)工資管理的設(shè)計(jì)與實(shí)現(xiàn)考 核 項(xiàng) 目滿分值得分1.獨(dú)立完成設(shè)計(jì)任務(wù)202.設(shè)計(jì)方案、說明書、圖紙、程序、計(jì)算等完成質(zhì)量303.創(chuàng)新與發(fā)揮104.答辯(口試)40合計(jì)得分成績指導(dǎo)教師簽字幾點(diǎn)說明1. 此表由指導(dǎo)教師進(jìn)行課程設(shè)計(jì)成績評定時(shí)填寫。2. 課程設(shè)計(jì)成績根據(jù)學(xué)生各項(xiàng)考核最后得分,按“優(yōu)”、“良”、“中”、“及格”、“不及格”五級評定。其中,90分以上為“優(yōu)”。8089分為“良”。70

4、79分為“中”;6069分為“及格”;60分以下為“不及格”。3. 課程設(shè)計(jì)結(jié)束后,此表由指導(dǎo)教師放入課程設(shè)計(jì)資料袋,送承擔(dān)課程的教研室存檔。2017 年 1 月 13 日題目:中小型企業(yè)工資管理的設(shè)計(jì)與實(shí)現(xiàn)一、問題描述:設(shè)計(jì)一套中小型企業(yè)工資管理方案,其中應(yīng)具有一定的人事檔案管理功能。在考慮具體中小型企業(yè)工資管理的業(yè)務(wù)處理過程中,還需要重點(diǎn)考慮如下業(yè)務(wù)處理過程:(1)工資管理系統(tǒng)是建立在人事檔案系統(tǒng)之上的,職能部門是財(cái)務(wù)處和會(huì)計(jì)室。(2)通過對職工建立人事檔案,根據(jù)其考勤情況以及相應(yīng)的工資級別,算出其相應(yīng)的工資??梢愿鶕?jù)職工的考勤、職務(wù)、部門和各種稅費(fèi)自動(dòng)求出工資(3)為了便于企業(yè)領(lǐng)導(dǎo)掌握本

5、企業(yè)的工資信息,在系統(tǒng)中應(yīng)加入各種查詢功能,包括個(gè)人信息、職工工資、本企業(yè)內(nèi)某一個(gè)月或某一部門的工資情況查詢,系統(tǒng)應(yīng)能輸出各類統(tǒng)計(jì)報(bào)表。二、需求分析:數(shù)據(jù)流圖:數(shù)據(jù)字典:三、概念結(jié)構(gòu)設(shè)計(jì):局部E-R圖:職工屬性:部門屬性:考勤屬性:工資屬性:每日情況屬性:全局E-R圖:用到的工具:E-R圖四、邏輯結(jié)構(gòu)設(shè)計(jì):初始的關(guān)系模式:職工:E(Eid, Ename, age, sex, job, manage_id, department_id) 工資:S(Sid, Sshould, Sreally, give_month, bonus_pct, Eid) 部門:D(Did, Dname, manage_

6、id) 考勤:C(Cid, late_times, leave_times, vacate_times, Eid, checking_date) 每日情況:Daily(daily_id, daily_date, should_time, really_time, Cid)關(guān)系模式的規(guī)范化處理: 因?yàn)闆]有傳遞函數(shù)依賴和完全函數(shù)依賴,所以是第三范式邏輯結(jié)構(gòu): 職工表: 工資表:部門表:考勤表:每日情況表:5、 物理結(jié)構(gòu)設(shè)計(jì):Employees表:CREATE TABLE employees (employee_id VARCHAR(10) NOT NULL COMMENT primary key,

7、manage_id VARCHAR(10) NOT NULL COMMENT foreign key,department_id VARCHAR(10) NULL DEFAULT NULL COMMENT foreign key,employee_name VARCHAR(10) NOT NULL COMMENT NOT NULL,sex TINYINT(2) NOT NULL DEFAULT 1 COMMENT 1表示男,2表示女,age INT(10) NULL DEFAULT NULL COMMENT 大于0,job VARCHAR(10) NOT NULL COMMENT 職務(wù),PRI

8、MARY KEY (employee_id),INDEX FK_employees_departments (department_id),INDEX FK_employees_employees (manage_id),CONSTRAINT FK_employees_departments FOREIGN KEY (department_id) REFERENCES departments (department_id),CONSTRAINT FK_employees_employees FOREIGN KEY (manage_id) REFERENCES employees (employ

9、ee_id)COMMENT=職工表COLLATE=utf8_general_ciENGINE=InnoDB;Departments表:CREATE TABLE departments (department_id VARCHAR(10) NOT NULL COMMENT primary key,manage_id VARCHAR(10) NULL DEFAULT NULL COMMENT foreign key,department_name VARCHAR(10) NULL DEFAULT NULL,PRIMARY KEY (department_id),INDEX FK_departmen

10、ts_employees (manage_id),CONSTRAINT FK_departments_employees FOREIGN KEY (manage_id) REFERENCES employees (employee_id)COMMENT=部門COLLATE=utf8_general_ciENGINE=InnoDB;Checking表:CREATE TABLE checking (checking_id VARCHAR(10) NOT NULL COMMENT primary key,employee_id VARCHAR(10) NOT NULL COMMENT foreign

11、 key,vacate_times INT(2) NULL DEFAULT NULL,late_times INT(2) NULL DEFAULT NULL,leave_times INT(2) NULL DEFAULT NULL,checking_date DATE NULL DEFAULT NULL,PRIMARY KEY (checking_id),INDEX FK_checking_employees (employee_id),CONSTRAINT FK_checking_employees FOREIGN KEY (employee_id) REFERENCES employees

12、 (employee_id)COMMENT=考勤COLLATE=utf8_general_ciENGINE=InnoDB;Daily_satiation表:CREATE TABLE daily_situation (daily_id VARCHAR(10) NOT NULL COMMENT primary key,checking_id VARCHAR(10) NULL DEFAULT NULL COMMENT foreign key,daily_date DATE NULL DEFAULT NULL,should_time DATETIME NULL DEFAULT NULL,really_

13、time DATETIME NULL DEFAULT NULL,PRIMARY KEY (daily_id),INDEX FK_daily_situation_checking (checking_id),CONSTRAINT FK_daily_situation_checking FOREIGN KEY (checking_id) REFERENCES checking (checking_id)COMMENT=每日情況COLLATE=utf8_general_ciENGINE=InnoDB;Salary表:CREATE TABLE salary (salary_id VARCHAR(10)

14、 NOT NULL COMMENT primary key,employee_id VARCHAR(10) NOT NULL COMMENT foreign key,bonus_pct DOUBLE NOT NULL DEFAULT 0.1 COMMENT 獎(jiǎng)金率,give_date DATE NULL DEFAULT NULL,should_salary INT(11) NULL DEFAULT NULL COMMENT 大于0,really_salary INT(11) NULL DEFAULT NULL COMMENT 大于0,PRIMARY KEY (salary_id),INDEX

15、FK_salary_employees (employee_id),CONSTRAINT FK_salary_employees FOREIGN KEY (employee_id) REFERENCES employees (employee_id)COMMENT=工資COLLATE=utf8_general_ciENGINE=InnoDB;觸發(fā)器設(shè)計(jì): (1)每日情況觸發(fā)器:當(dāng)應(yīng)到時(shí)間實(shí)到時(shí)間時(shí),遲到次數(shù)自動(dòng)加1CREATE DEFINER=rootlocalhost TRIGGER daily_situation_after_update AFTER UPDATE ON daily_sit

16、uation FOR EACH ROW BEGINUPDATE checking c,daily_situation dSET c.late_times = c.late_times + 1WHERE d.should_time d.really_time and d.checking_id = c.checking_id and date_format(d.should_time,%Y-%m-%d)=date_format(d.really_time,%Y-%m-%d);END功能演示:第一個(gè)人1101的11月份考勤情況中,起初沒有遲到現(xiàn)把他的第一天情況改成遲到觸發(fā)器響應(yīng),自動(dòng)修改check

17、ing表,使得第一個(gè)人的遲到次數(shù)加1(2) 考勤_工資觸發(fā)器:實(shí)發(fā)工資=應(yīng)發(fā)工資+應(yīng)發(fā)工資*獎(jiǎng)金率-遲到次數(shù)*50-早退次數(shù)*20-請假次數(shù)*10CREATE DEFINER=rootlocalhost TRIGGER checking_salary AFTER UPDATE ON checking FOR EACH ROW BEGINupdate salary s,checking cset really_salary = 0.9*(should_salary+should_salary*bonus_pct-(select late_times from checking c where s

18、.employee_id = c.employee_id)*50- (select leave_times from checking c where s.employee_id = c.employee_id)*20 - (select vacate_times from checking c where s.employee_id = c.employee_id)*10)where s.give_date = c.checking_date;END功能演示:第一個(gè)人在11月份的考核中,遲到了一次工資=0.9*(10000+10000*0.11-50)=9945現(xiàn)更改李四的考勤表,遲到改為5

19、次,早退改為3次李四的工資變?yōu)椋汗べY=(10000+10000*0.11-50*5-20*3)=9711六、程序:個(gè)人信息查詢:在職工表中右鍵簡歷視圖:SELECT e1.employee_id 員工編號,e1.employee_name 姓名,e1.sex 性別,e1.age 年齡,e1.job 工作,department_name 部門,e2.employee_name 經(jīng)理FROM employees e1,employees e2,departments dWHERE e1.manage_id = e2.employee_id and e1.department_id = d.depa

20、rtment_id 職工工資查詢:在工資表中右鍵新建視圖,輸入查詢語句 (1)查詢11月份的工資SELECT e.employee_id 員工編號,employee_name 姓名,job,department_name 部門,should_salary 應(yīng)發(fā)工資,really_salary 實(shí)發(fā)工資,give_date 發(fā)放時(shí)間FROM employees e,departments d,salary sWHERE e.department_id = d.department_id and e.employee_id = s.employee_id and date_format(s.giv

21、e_date,%Y-%m-%d) = 2016-11-30 (2) 查詢行政部的工資在我錄入數(shù)據(jù)的時(shí)候,設(shè)定了以下規(guī)則:部門ID 部門編號 部門經(jīng)理 獎(jiǎng)金率 應(yīng)發(fā)工資 101 行政部 行政經(jīng)理 11% 10000 102 財(cái)務(wù)部 財(cái)務(wù)總監(jiān) 14% 25000 103 策劃部 策劃總監(jiān) 12% 18000 104 研發(fā)部 研發(fā)總監(jiān) 15% 30000 105 公關(guān)部 公關(guān)經(jīng)理 11% 15000 106 市場部 產(chǎn)品經(jīng)理 13% 20000SELECT e.employee_id 員工編號,employee_name 姓名,job,department_name 部門,should_salary

22、 應(yīng)發(fā)工資,really_salary 實(shí)發(fā)工資,give_date 發(fā)放時(shí)間FROM employees e,departments d,salary sWHERE e.department_id = d.department_id and e.employee_id = s.employee_id and date_format(s.give_date,%Y-%m-%d) = 2016-11-15 and d.department_id = 101 考勤表考勤表右鍵新建視圖,輸入查詢信息SELECT e.employee_id 員工編號,employee_name 姓名,departmen

23、t_name 部門,late_times 遲到次數(shù),leave_times 早退次數(shù),vacate_times 請假次數(shù),checking_date 日期FROM employees e,departments d,checking cWHERE e.department_id = d.department_id and e.employee_id = c.employee_id 七、設(shè)計(jì)小結(jié):(1)課程設(shè)計(jì)的總過程:1看懂問題描述,分析要實(shí)現(xiàn)哪些功能2根據(jù)問題描述,畫出數(shù)據(jù)流圖,寫出詳細(xì)的數(shù)據(jù)字典找出每個(gè)實(shí)體,分析每個(gè)實(shí)體的屬性,以及實(shí)體之間的聯(lián)系并畫出E-R圖3從E-R圖中找到實(shí)體屬性之后,建立最初的關(guān)系模式,并將其進(jìn)行規(guī)范化處理,處理成3NF的形式4創(chuàng)建各表一、 根據(jù)E-R圖,創(chuàng)建各表(包括職工表,部門表,工資表,考勤表,每日情況表),在每個(gè)表里添加它們的屬性二、 再將表和表之間的聯(lián)系添加到表中例如:(1)部門和職工是一對多的關(guān)系,所以將部門的ID加到職工表中 (2)職工和考勤表是一對一的關(guān)系,所以把職工的ID加到考勤表中,或者將考勤表的ID加到職工表中。(為了體現(xiàn)規(guī)范化,將這個(gè)聯(lián)系的ID放在原表中的ID之后)三、 為每一個(gè)表中的屬性設(shè)置主碼(一般為其各自的I

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論