久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

數據庫課程設計題目第9題學校的工資管理系統

2020-11-28 22:20:03下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了這篇《數據庫課程設計題目第9題學校的工資管理系統》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《數據庫課程設計題目第9題學校的工資管理系統》。

數據庫課程設計報告

題目:第9題

學校的工資管理系統

l

實現部門、職務、職稱等基本信息的管理;

l

實現教職工信息的管理;

l

實現工資項目的管理,工資項目設有啟用標志和加扣標志;

l

實現教職工工資項目及其工資的管理;

l

創建觸發器當往教職工工資項目表中插入記錄或刪除記錄時,自動修改該職工的應發工資數和實發工資數;

l

創建存儲過程統計某個月各種工資項目的發放總和;

l

創建視圖查詢各個員工的應發、應扣和實發工資;

l

建立數據庫相關表之間的參照完整性約束。

一、關系模式設計

根據題意,為實現所要求的所有功能,此處共設計5個關系,具體介紹和表的形式如下所示:

①職工(職工編號,姓名,性別,年齡,部門,職稱)

Tno

Tname

Tsex

Tage

Department

Title

②職位變更(職工編號,前職稱,現職稱,變更日期)

Tno

Title1

Title2

Dates

③考勤(職工編號,加班次數,缺勤次數,考勤日期)

Tno

Overtime

Absence

Dates

④基本工資表(職稱,基本工資)

Title

Base

⑤工資表(職工編號,基本工資,加班工資,缺勤扣錢,實發工資)

Tno

Base

Overpay

Docked

Wages

二、全局E-R圖參照1

職稱

基本工資

基本工資表

參照2

基本工資

得到

職工編號

工資表

職稱

年齡

部門

加班工資

缺勤扣錢

實發工資

加班次數

缺勤次數

考勤日期

職工編號

接收考勤

考勤

變更日期

現職稱

前職稱

職工編號

職位變更

職位變更記錄

性別

姓名

職工編號

職工

三、物理設計

1、建立數據庫,學校的工資管理系統

CREATE

DATABASE

SchoolSalary2、建立職工信息表

CREATE

TABLE

Teacher

(Tno

CHAR(20)

PRIMARY

KEY,/*職工號*/

Tname

CHAR(20)

UNIQUE,/*職工名*/

Tsex

CHAR(10)

NOT

NULL

CHECK(Tsex

in('男','女')),/*性別*/

Tage

INT

NOT

NULL,/*年齡*/

Depart

CHAR(20),/*所屬部門*/

Title

CHAR(20))

3、建立職稱變更記錄表

CREATE

TABLE

Change

(Tno

CHAR(20),/*職工號*/

Title1

CHAR(20),/*之前的職稱*/

Title2

CHAR(20),/*現職稱*/

Dates

INT,/*職位變更的月份*/

FOREIGN

KEY

(Tno)

REFERENCES

Teacher(Tno))

4、建立考勤表

CREATE

TABLE

Attendance

(Tno

CHAR(20),/*職工號*/

Overtime

INT,/*加班次數*/

Absence

INT,/*缺勤次數*/

Dates

INT,/*月份*/

FOREIGN

KEY

(Tno)

REFERENCES

Teacher(Tno)

ON

DELETE

CASCADE

ON

UPDATE

CASCADE)

5、建立基本工資表

CREATE

TABLE

Refer

(/*工資參照表*/

Title

CHAR(20)

PRIMARY

KEY,/*職位*/

Salary

FLOAT,/*對應金額*/)

6、建立工資表

CREATE

TABLE

Pay

(Tno

CHAR(20),/*職工號*/

Base

FLOAT,/*基本工資*/

Overpay

FLOAT,/*加班費*/

Docked

FLOAT,/*缺勤扣除工資*/

Wages

FLOAT,/*實際應得工資*/

FOREIGN

KEY(Tno)

REFERENCES

Teacher(Tno))

三、數據庫完整性設計

1、各表名及其對應主鍵

職工(Teacher)

職工編號(Tno)

職稱變更記錄(Change)

職工編號(Tno)

考勤(Attendance)

職工編號(Tno)

基本工資表(Refer)

職稱(Title)

工資表(Pay)

職工編號(Tno)

2、參照完整性設計

2.1、職稱變更記錄(Change)的職工編號(Tno)設為外鍵

FOREIGN

KEY

(Tno)

REFERENCES

Teacher(Tno)

2.2、考勤(Attendance)的職工編號(Tno)設為外鍵

FOREIGN

KEY

(Tno)

REFERENCES

Teacher(Tno)

ON

DELETE

CASCADE

ON

UPDATE

CASCADE

實現在更新和刪除時級聯操作

2.3、工資表(Pay)的職工編號(Tno)設為外鍵

FOREIGN

KEY

(Tno)

REFERENCES

Teacher(Tno)

3、CHECK約束設計

職工(Teacher)中對“性別”進行CHECK約束:

CHECK(Tsex

in('男','女'))

要求性別必須為“男”或“女”

4、觸發器設計

4.1、在職工表中建立職稱變更觸發器,當某職工的職稱發生變化時,在職稱變更記錄表中自動插入一個記錄,記錄變更前后的職稱名以及變更日期

CREATE

TRIGGER

Title_change

ON

Teacher

FOR

UPDATE

AS

BEGIN

DECLARE

@Tno

CHAR(20)

SELECT

@Tno=inserted.Tno

FROM

inserted

SELECT

*

FROM

Teacher

WHERE

@Tno=Teacher.Tno

DECLARE

@Title1

CHAR(20)

SELECT

@Title1=deleted.Title

FROM

deleted

DECLARE

@Title2

CHAR(20)

SELECT

@Title2=Teacher.Title

FROM

Teacher

WHERE

@Tno=Teacher.Tno

IF

@Title1!=@Title2

BEGIN

INSERT

INTO

Change(Tno,Title1,Title2)

VALUES(@Tno,@Title1,@Title2)

END

END

GO

4.2、在職工表中建立基本工資觸發器,當插入一個新的職工記錄時,根據其職稱并參照基本工資表,在工資表中自動更新其基本工資,且默認加班工資和缺勤扣錢均為0

CREATE

TRIGGER

Basic_pay

ON

Teacher

FOR

insert

AS

BEGIN

DECLARE

@Base

FLOAT,@tno

CHAR(20)

SELECT

@tno=inserted.Tno

FROM

inserted

SELECT

@Base=Refer.Salary

FROM

Refer,inserted

WHERE

Refer.Title=inserted.Title

INSERT

INTO

Pay(Tno,Base,Overpay,Docked,Wages)

VALUES(@tno,@Base,0,0,@Base)

END

GO

4.3、在考勤表中建立考勤工資觸發器,當給一個職工插入考勤信息后,自動在工資表中更新其工資信息,算法里設計加班一次加200塊,缺勤一次扣100塊

CREATE

TRIGGER

A_pay

ON

Attendance

FOR

INSERT

AS

BEGIN

DECLARE

@tno

CHAR(20)

DECLARE

@a

FLOAT

DECLARE

@b

FLOAT

DECLARE

@c

INT

DECLARE

@d

INT

DECLARE

@e

FLOAT

SELECT

@tno=inserted.Tno

FROM

inserted

SELECT

@a=Overpay

FROM

Pay

WHERE

Pay.Tno=@tno

SELECT

@b=Docked

FROM

Pay

WHERE

Pay.Tno=@tno

SELECT

@c=Overtime

FROM

Attendance

WHERE

Attendance.Tno=@tno

SELECT

@d=Absence

FROM

Attendance

WHERE

Attendance.Tno=@tno

SELECT

@e=Wages

FROM

Pay

WHERE

Pay.Tno=@tno

UPDATE

Pay

SET

Pay.Overpay=@a+200*@c

WHERE

Pay.Tno=@tno

UPDATE

Pay

SET

Pay.Docked=@b+100*@d

WHERE

Pay.Tno=@tno

UPDATE

Pay

SET

Pay.Wages=@e+@a+200*@c-(@b+100*@d)

WHERE

Pay.Tno=@tno

END

4.4、在職稱變更記錄表中建立基本工資變更觸發器,當某職工職稱變更且記錄在職稱變更記錄表插入記錄后,在工資表中自動更新其所有工資信息

CREATE

TRIGGER

Change_pay

ON

Change

FOR

UPDATE,INSERT

AS

BEGIN

DECLARE

@A

CHAR(20)

DECLARE

@B

CHAR(20)

DECLARE

@C

FLOAT

DECLARE

@D

FLOAT

SELECT

@A=inserted.Title2

FROM

inserted

SELECT

@B=inserted.Tno

FROM

inserted

SELECT

@C=Pay.Overpay

FROM

Pay,inserted

WHERE

Pay.Tno=@B

SELECT

@D=Pay.Docked

FROM

Pay,inserted

WHERE

Pay.Tno=@B

IF

@A='普通教師'

UPDATE

Pay

SET

Pay.Base=4000,Pay.Wages=4000+@C-@D

WHERE

@B=Pay.Tno

IF

@A='高級教師'

UPDATE

Pay

SET

Pay.Base=5000,Pay.Wages=5000+@C-@D

WHERE

@B=Pay.Tno

IF

@A='主任'

UPDATE

Pay

SET

Pay.Base=6000,Pay.Wages=6000+@C-@D

WHERE

@B=Pay.Tno

IF

@A='校長'

UPDATE

Pay

SET

Pay.Base=7000,Pay.Wages=7000+@C-@D

WHERE

@B=Pay.Tno

END

GO

五、數據庫視圖設計

查看各職工應得和實發的工資:

CREATE

VIEW

Pay_view

AS

SELECT

Tno,Base+Overpay

Gets,Docked,Wages

FROM

Pay

六、存儲過程設計

CREATE

PROCEDURE

ALL_pay

AS

SELECT

SUM(Base)

總基本工資,SUM(Overpay)

總加班工資,SUM(Docked)

總扣工資,SUM(Wages)

總實發工資

FROM

Pay

七、實驗結果

(1)基本工資表

各職工的基本工資按各自的職稱參照此表

(2)職工表,以下為添加記錄后的結果

添加后,Basic_pay觸發器觸發,在工資表中自動插入所有人的基本工資信息:

(3)現將李楠、王峰的職稱都提一級,吳鵬降一級,職稱更新后,Title_change觸發器觸發,首先職稱變更記錄表中插入相應記錄,:

然后工資表自動更新,以上三人的基本工資改變:

(4)在考勤表中添加記錄

隨后A_pay觸發器觸發,在工資表中按照加班一次加200、缺勤一次扣100自動更新職工的工資信息:

(5)視圖結果

(6)存儲過程結果

八、實驗心得

本次的數據庫大題目課程設計,所運用到的知識比較豐富,要考慮到的點也比較多,故此需要一定的思考。在整個設計過程中,不僅回顧了以往的理論知識,更重要的是鍛煉了對SQL語言的編寫能力。題目所給的要求并不是特別復雜,在設計數據庫的參照完整性約束上是比較簡單的,主要的在于觸發器的設計和功能的實現,這也正是此次實驗的精髓所在,讓我了解到數據庫的實用性和各方面的可行性,希望以后也能在數據庫的實踐上更進一步。

下載數據庫課程設計題目第9題學校的工資管理系統word格式文檔
下載數據庫課程設計題目第9題學校的工資管理系統.doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點此處下載文檔

文檔為doc格式


聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發現有涉嫌版權的內容,歡迎發送郵件至:645879355@qq.com 進行舉報,并提供相關證據,工作人員會在5個工作日內聯系你,一經查實,本站將立刻刪除涉嫌侵權內容。

相關范文推薦

    數據庫課程設計工資管理系統.

    數據庫課程設計報告 工資管理系統 組員:廖翔, 劉小芳, 強江波, 張晶晶,馮兆強,夏沖 組長 :劉小芳 需求分析員 :張晶晶 程序員 :廖翔 , 劉小芳 , 強將波 測試員 :馮兆強 界面......

    數據庫課程設計題目

    數據庫課程設計題目 ? 題目1:計算機學院畢業設計管理系統 題目2:課程設計管理系統 要求:1)教師端和學生端 2)學生端:分組、選題目、進度安排、任務分配等 3)教師端:查看分組,查看題目,......

    工資管理系統--軟件工程課程設計2

    目 錄 目錄...............................................................................................................第一章 緒論..................................

    vb課程設計 職工工資管理系統代碼

    Form1: Dim errorCount As Integer Private Sub Command1_Click() If Text1.Text = "system" And Text2.Text = "1234" Then Load Form2 Form2.Show Me.Hide MsgBox "登陸成......

    數據庫課程設計--學校教學

    武漢理工大學華夏學院《數據庫原理與應用》課程設計說明書 學校教學管理系統 一總論 1.1系統開發的背景 目前國內學校教學設備自動化管理水平不是很高。大多數學校設備管理......

    酒店管理系統 (數據庫課程設計)

    數據庫 酒店管理系統 課程設計 (基于 SQL server 2000) 實現過程 1.1 通過查詢分析器實現建立數據庫、數據表 ------------------------------創建數據庫和數據表--- (1)創建酒......

    數據庫課程設計+飛機訂票系統

    飛機訂票系統 1.概述(設計題目與可行性分析) 1.1設計題目:飛機訂票系統 1.2可行性分析 飛機訂票系統是為機場工作人員和客戶提供訂票退票等與機票相關內容的管理系統,方便機場工......

    數據庫課程設計學籍管理系統

    學籍管理系統 本次數據庫課程設計是以Access數據庫作為后臺以VB作為前臺的應用型設計課程。 綜合我們所學的兩大課程創建應用型的數據庫系統,大大的提高了我們學生的動手能力......

主站蜘蛛池模板: 护士张开腿被奷日出白浆| 亚洲人成人网色www| 国产一卡2卡3卡四卡精品网站| 亚洲色欲色欲www在线丝| 熟女无套高潮内谢吼叫免费| 在线a亚洲老鸭窝天堂av高清| 久久久一本精品99久久精品66| 久久精品中文字幕无码| 亚洲精品无码mⅴ在线观看| 少妇的肉体k8经典| 青草伊人久久综在合线亚洲| 女人被强╳到高潮喷水在线观看| 国产成人精品视频ⅴa片软件竹菊| 亚洲人成网址在线播放小说| 亚洲精品无码永久在线观看你懂的| 美丽人妻系列无码专区| 六月婷婷久香在线视频| 中国少妇内射xxxhd免费| 中文字幕高清免费日韩视频在线| 亚洲综合在线另类色区奇米| 亚洲秘?无码一区二区三区欧美| 亚洲成a人片在线播放| 国产对白老熟女正在播放| 少妇爆乳无码av无码波霸| 亚洲熟妇av乱码在线观看| 日韩av无码精品一二三区| 少妇夜夜春夜夜爽试看视频| 永久黄网站免费视频性色| 内射欧美老妇wbb| 巨大乳女人做爰视频在线看| 小辣椒福利视频导航| 国产主播av福利精品一区| 国精品无码人妻一区二区三区| 亚洲a∨天堂男人无码| 国产精品视频色尤物yw| 国产中年熟女高潮大集合| 精品亚洲成a人在线观看| 国产高清不卡无码视频| 上司人妻互换hd无码中文| 日韩不卡手机视频在线观看| 久久久综合香蕉尹人综合网|