




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、數據庫管理系統課程設計報告題 目: 人事信息管理系統的后臺數據庫設計院 (系): 信息科學與工程學院 專業班級: 計算機科學與技術*班 學生姓名: * 學 號: * 指導教師: 陳 頡 20 一三 年 1 月 7 日至20 一三 年 1 月 一八 日華中科技大學武昌分校制 數據庫管理系統 課程設計任務書一、設計(調查報告/論文)題目 人事信息管理系統的后臺數據庫設計二、設計(調查報告/論文)主要內容 內容:完成人事信息的管理工作,實現各部門的信息化管理,滿足員工與管理者的辦公需求,例如員工查詢信息、管理員修改信息等,要求設計并實現人事信息管理系統的后臺數據庫。 基本功能與要求:1.在人事管理過
2、程中,實現信息的自動化管理。2.實現各種信息的修改、插入、刪除功能(對管理員而言)。3.實現對各種信息的查詢、統計,支持模糊查詢(對員工和管理員均可)。4.按照年份月份統計某個員工的出勤情況。5.按照某年某月某日統計查詢某部門的遲到和早退人數。6.按年統計各部門的調入調出人數信息。 分工任務:1 需求分析 2 數據庫物理實現 3系統后臺功能測試三、原始資料1.數據庫管理系統課程設計指導書2. 數據庫系統設計課件四、要求的設計(調查/論文)成果1.課程設計報告2.課程設計作品五、進程安排序號課程設計內容學時分配備注1選題、需求分析1天2數據庫設計2天3數據庫表及相關約束、視圖實現2天4數據庫的存
3、儲過程、觸發器實現2天5數據庫后臺功能測試2天6驗收答辯、撰寫課程設計報告1天合計10天六、主要參考資料1 顧兵.數據庫技術與應用(SQL Server).北京:清華大學出版社,2010.2 馬曉梅.SQL Server實驗指導.第3版.北京:清華大學出版社,2009.3 范立南等.SQL Server 2005實用教程.北京:清華大學出版社,2009.4 李丹.SQL Server 2005數據庫管理與開發.北京:機械工業出版社,2010.指導教師(簽名): 20 年 月 日目 錄 1.需求分析1 系統功能的基本要求1 系統需求分析1 數據字典2 數據流圖3 2.概念結構設計4 局部E-R圖
4、4 全局E-R圖6 3.邏輯結構設計7 E-R圖向關系模式轉換的原則7 根據E-R圖轉換關系模式8 關系模式的優化8 4.物理結構設計9 數據庫文件的建立9 數據表的建立9 視圖的建立11 索引的建立11 存儲過程的建立12 觸發器的建立12 約束的建立12 5.數據庫的物理實現一三 數據庫的建立一三 數據表的建立一三 視圖的建立16 索引的建立22 存儲過程的建立27 觸發器的建立29 約束的建立30 6.系統后臺功能測試34 7.總結371.需求分析開發數據庫系統的第一步是進行需求分析,需求分析的好壞直接決定者系統能否真正滿足用戶的需要。需求分析階段位于軟件開發的前期,它的基本任務是準確地
5、定義未來系統的目標,確定為了滿足用戶的需求系統必須做什么。系統功能的基本要求:(1)管理者進入系統后要能夠清晰地看到企業的機構組織形式,并能夠很方便地進入到各個管理功能模塊中。管理者能夠根據企業的實際來實時地改變系統中機構組織,主要的改變包括:當有新部門成立時,要將新部門加入到系統中;當有部門發生變更時,如更名,上級部門改變了等,要將變更信息在系統中及時更新;(2)員工各種信息的輸入,包括員工的基本信息、學歷信息、婚姻狀況信息、職稱等。(3)員工各種信息的修改和刪除。修改的范圍有:人員的基本信息;將人員從一個部門下移到另一個部門下。對于轉出、辭職、辭退、退休員工信息的刪除;(4)按照一定的條件
6、,查詢、統計符合條件的員工信息;至少應該包括每個員工詳細信息的查詢、按婚姻狀況查詢、按學歷查詢、按工作崗位查詢等,至少應該包括按學歷、婚姻狀況、崗位、參加工作時間等統計各自的員工信息;系統需求分析系統功能流程圖職工基本信息管理職工基本信息管理人事管理系統信息的修改插入刪除圖1-1人事管理系統總數據流程圖查詢統計員工調動信息管理工資管理工作信息管理部門信息管理考勤信息統計人事管理系統信息的修改插入刪除圖1-1人事管理系統總數據流程圖查詢統計員工調動信息管理工資管理工作信息管理部門信息管理考勤信息統計系統主要功能模塊分析(1)基本信息模塊。主要包括企業員工的基本信息,如姓名、性別、學歷、婚姻狀況、
7、聯系方式等。職工登錄后可以查詢個人信息; 管理員可以負責維護職工基本信息和職工流動信息。(2)員工工作信息模塊。主要顯示員工在公司的情況。(3)部門信息模塊。主要記錄企業的組織機構信息。(4)考勤信息模塊。主要包含員工上下班的出勤情況,如遲到、休假等。(5)工資信息模塊。主要包括員工的工資信息。(6)查詢統計模塊。主要為實現上述信息的查詢和統計,并能夠生成相關報表文件。 數據字典數據字典的用途:是關于數據庫中數據的描述;在需求分析階段建立,是下一步進行概念設計的基礎數據字典的內容:數據項(數據的最小單位)、數據結構(若干數據項有意義的集合)、數據流(表示某一處理過程的輸入或輸出)、數據存儲(處
8、理過程中存取的數據)、處理過程(該過程的功能)等數據項(1)員工基本情況。包括的數據項有員工編號,姓名,性別,年齡,名族,入職時間,所屬部門,x,身份證號,基本工資。(2)員工工作信息。包括的數據項有員工編號、所屬部門編號、職稱、工齡。(3)部門信息。包括的數據項有部門編號、部門名稱、部門電話、部門經理。(4)員工考勤信息。包括的數據項有員工編號、缺勤、遲到、早退。(5)員工工資信息。包括的數據項有員工編號,姓名,底薪,補貼,獎金,加班,代扣養老金,代扣醫療保險,代扣住房公積金,所得稅,房貼,房租,實發工資。 數據結構例如說,數據結構名:員工含義說明:是人事信息管理系統的主體數據結構,定義了一
9、個員工的有關信息。 組成:員工編號、性別、姓名、年齡、民族、身份證號、入職時間、部門編號、x、基本工資。數據流例如說,數據流名:變更員工 數據流來源:員工編號 數據流去向:員工信息 說明:變動人員的有關信息數據存儲例如說,數據存儲名:員工信息表單流入數據流:來源員工流出數據流:去向存取方式:隨機存取說明:記錄員工信息的基本情況存儲結構例如工資信息中處理過程名:計算工資輸入數據流:員工,出勤信息輸出數據流:工資信息表單說明:計算公司所有員工的工資處理:在每個月的最后一天計算出每個員工的工資。總數據流圖人事管理 系 統人事信息系統數據庫人事管理 系 統人事信息系統數據庫人事信息系統管理員2.概念結
10、構設計局部E-R圖員工基本信息E-R圖圖2-1員工基本信息E-R圖圖2-1員工基本信息E-R圖職工信息工號姓名性別所屬部門年齡民族身份證號入職時間x基本工資員工工作信息E-R圖員工工作信息員工工作信息工號所屬部門編號職稱工齡圖2-2 員工工作信息E-R圖部門信息E-R圖圖2-3 部門信息E-R圖圖2-3 部門信息E-R圖部門信息部門編號部門名稱部門經理部門電話工資信息E-R圖工資信息工資信息員工編號實上班天數扣款實發工資圖2-4 工資信息E-R圖考勤信息E-R圖考勤信息考勤信息缺勤早退遲到圖2-5 考勤情況E-R圖工號日期員工調動信息E-R圖員工調動信息員工調動信息調入時間工號調入時間工號姓名
11、姓名調離時間新部門原部門調離時間新部門原部門圖2-圖2-6 員工調動情況E-R圖全局E-R圖影響新部門原部門調離時間調入時間姓名工號員工調動信息包括身份證號圖2-6 全局E-R圖工資工號實上班天數扣款實發工資考勤缺勤早退遲到工號影響新部門原部門調離時間調入時間姓名工號員工調動信息包括身份證號圖2-6 全局E-R圖工資工號實上班天數扣款實發工資考勤缺勤早退遲到工號影響發放給員工工號姓名性別所屬部門年齡民族入職時間x基本工資屬于部門部門編號部門名稱部門經理部門電話包括員工工作信息工號所屬部門編號職稱工齡第三章 邏輯結構設計 邏輯結構設計的任務是把概念結構設計階段設計完畢的基本ER圖轉化為與選用的具
12、體機器上的DBMS產品所支持的數據模型相符的邏輯結構(包括數據庫模式和外模式)。這些模式在功能性、完整性和一致性約束及數據庫的可擴充性等方面應滿足用戶的各種要求。ER圖型關系模型的轉化要解決的問題是如何將實體和實體間的關系轉化為關系模式,如何確定這些關系模式的屬性和代碼。 E-R圖向關系模式轉換的原則(1)一個實體型轉換為一個關系模式。實體的屬性就是關系的屬性。實體的碼就是關系的碼。(2)一個聯系轉化為一個關系模式,與該聯系相連的各實體的碼以及聯系的屬性轉化為關系的屬性,該關系的碼則有三種情況:若聯系為1:1,則每個實體的碼均是該關系的后選碼。若聯系為1:n,則關系的碼為n端實體的碼。若聯系為
13、m:n,則關系的碼為諸實體碼的組合。 = 1 * GB3 聯系為1:1一個1:1聯系可以轉換為一個獨立的關系模式,也可以與任意一端對應的關系模式合并。如果轉換為一個獨立的關系模式,則與該聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,l 每個實體的碼均是該關系的候選碼。如果與某一端對應的關系模式合并,則需要在該關系模式的屬 = 2 * GB3 聯系為1:n一個1:n聯系可以轉換為一個獨立的關系模式,也可以與n端對應的關系模式合并。如果轉換為一個獨立的關系模式,則與該聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,而關系的碼為n端實體的碼。如果與n端對應的關系模式合并,則在n
14、端實體對應模式中加入1端實體所對應關系模式的碼,以及聯系本身的屬性。而關系的碼為n端實體的碼。 = 3 * GB3 聯系為m:n一個m:n聯系轉換為一個關系模式。與該聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性。而關系的碼為各實體碼的組合。例如在我們的例子中,選修聯系是一個m:n聯系,可以將它轉換為如下關系模式,其中學號與課程號為關系的組合碼:選修(學號,課程號,成績)三個或三個以上實體間的一個多元聯系轉換為一個關系模式。與該多元聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性。三個或三個以上實體間的一個多元聯系轉換為一個關系模式。與該多元聯系相連的各實體的碼以及聯系本身的
15、屬性均轉換為關系的屬性。而關系的碼為各實體碼的組合。(3)同一實體集的實體間的聯系,即自聯系,也可按上述1:1、1:n和m:n三種情況分別處理。(4)具有相同碼的關系模式可合并。為了減少系統中的關系個數,如果兩個關系模式具有相同的主碼,可以考慮將他們合并為一個關系模式。合并方法是將其中一個關系模式的全部屬性加入到另一個關系模式中,然后去掉其中的同義屬性(可能同名也可能不同名),并適當調整屬性的次序。根據E-R圖轉換關系模式一個實體型轉換為一個關系模式。實體的屬性就是關系的屬性。實體的碼就是關系的碼。例如在我們的例子中,員工基本信息實體可以轉換為如下關系模式:員工基本信息(工號,姓名,性別,年齡
16、,民族,入職時間,所屬部門,x,身份證號,基本工資)同樣,員工工作信息、部門信息等都分別轉換為一個關系模式:員工的工作信息(工號,所屬部門編號,職稱,工齡)部門(部門編號,部門名稱,部門經理,部門電話)工資(工號,實上班天數,實發工資,扣款)考勤(工號,缺勤,遲到,早退,日期)員工調動信息(工號,姓名,原部門編號,新部門編號,調離時間,調入時間)關系模式優化按照上述4條原則,學生管理子系統中的5個實體和聯系可以轉換為下列關系模型:將員工工作信息和工資信息具有相同碼,合并為員工工作信息(工號,所屬部門編號,職稱,工齡,實上班天數,實發工資,扣款)由上述優化得到最后滿足第三范式的關系模式為:員工基
17、本信息(工號,姓名,性別,年齡,民族,入職時間,所屬部門,x,身份證號,基本工資)員工工作信息(工號,所屬部門編號,職稱,工齡,實上班天數,實發工資,扣款)部門(部門編號,部門名稱,部門經理,部門電話)考勤(工號,缺勤,遲到,早退,日期)員工調動信息(工號,姓名,原部門編號,新部門編號,調離時間,調入時間)4.物理結構設計數據庫文件的建立 本數據庫的文件是由一個數據文件、一個次要文件和一個事務日志文件組成。數據文件包括數據庫的初始信息,記錄數據庫還擁有哪些文件,并且用于存儲數據記錄。次要文件通過在不同的物理磁盤上創建次要數據文件并將數據存儲其中,可將數據橫跨存儲在多塊物理磁盤上。而事務日志文件
18、包括用來恢復數據庫的日志信息,記錄數據庫更新情況的文件。數據表的建立根據課程設計任務書的要求,經需求分析,需用到五個表,分別為員工信息表,員工工作信息表,部門信息表,考勤信息表,工資信息表,員工調動信息表。詳細情況如下:員工基本信息表表4-1 員工信息表編號屬性名稱類型長度可否為空含義說明1員工編號char 9否標識每一個員工2姓名char 8否員工姓名3性別char 2否標識是男士還是女士4年齡 int 是標識員工的年齡5民族char 4否標識員工的民族6身份證號char 一八否標識員工的身份7入職時間datetime 否記錄員工什么時候入職8部門編號char 4是標識員工所在部門9xcha
19、r11否記錄員工的聯系方式10基本工資int 否記錄員工的基本收入員工工作信息表表4-2 員工工作信息表編號屬性名稱類型長度可否為空含義說明1員工編號char9否標識每一個員工2部門編號char4否標識每個部門3職稱char6是標識每一個員工頭銜4工齡int是標識每個員工工作時間部門信息表表4-3 部門信息表編號屬性名稱類型長度可否為空含義說明1部門編號char4否標識每個部門2部門名稱char8否記錄部門的名稱3部門電話char8否記錄個部門的聯系方式4部門經理char8否記錄部門的管理人員考勤信息表表4-4 考勤信息表編號屬性名稱類型長度可否為空含義說明1員工編號char9否標識每一個員工
20、2缺勤char4是記錄缺勤次數3遲到char4是記錄遲到次數4早退char4是記錄早退次數5日期datetime否記錄考勤日期工資信息表表4-5 工資信息表編號屬性名稱類型長度可否為空含義說明1員工編號char9否標識每一個員工2實上班天數int否記錄每個員工的上班天數3實發工資int是記錄員工的實際工資4扣款int是記錄扣款信息員工調動信息表表4-6 員工調動信息表編號屬性名稱類型長度可否為空含義說明1員工編號char9否標識每一個員工2姓名char8否員工姓名3原部門編號char4是調離的部門4新部門編號char4是調入的部門5調離時間datetime是記錄調離原部門的時間6調入時間dat
21、etime是記錄調入新部門的時間視圖的建立視圖是一種常用的數據庫對象,是關系數據庫系統提供給用戶以多種角度來觀察數據的一種重要機制。使用視圖是的用戶能夠以更多樣而且更有彈性的方式來訪問數據,這不僅可以確保數據庫的安全性,而且可以提高其使用的便利性。視圖的作用是可以間接的訪問其他的表或者視圖中的數據。在數據庫的應用中使用視圖有幾方面優點:(1)集中數據顯示;(2)簡化數據操作;(3)提供簡便易行的安全保密措施;(4)易于合并或分割數據。相對于人事信息管理系統,對員工基本信息的查詢較為頻繁,故創建一個顯示員工基本信息的視圖view_staff;結算工資時,會用到員工的工資信息,故建立一個員工工資信
22、息視圖view_gongzi,還會考慮員工的出勤情況,故建立一個某個員工出勤情況的視圖view_chuqin;員工對自己的工作信息進行查詢時,要用到工作信息視圖,故建立一個工作信息視圖view_gognzuo,部門進行管理時,需要查詢部門信息,故需要建立一個部門信息視圖view_bumen等。索引的建立索引是SQL Server訪問數據使用的一種輔助數據結構,主要作用是提高數據的訪問速度和確保數據的唯一性。索引是一個單獨的、物理的數據庫結構,它是某個表中一列或若干列值得集合和相應說指向表中物理標識這些值的數據頁的邏輯指針清單。索引是依賴于表建立的,可以有效的進行數據選擇和排序。索引的優點有:(
23、1)利用索引可以大大提高查詢速度;(2)保證數據的唯一性;(3)在使用GROUP BY和ORDER BY子句進行檢索數據時,可以顯著減少查詢中分組和排序的時間;(4)使用索引可以在檢索數據的過程中進行優化,提高系統性能;(5)可以加速表與表之間的連接。由上所述,在人事信息管理系統中各表的主鍵列需強制唯一,更按升序排列創建索引,便于信息的查詢搜索,建立了以下幾個索引:員工姓名聚集索引,部門名稱聚集索引,考勤編號聚集索引,工作主鍵聚集索引,身份證號唯一索引。存儲過程的建立存儲過程是一組為了完成特定功能的表達式集合,經編譯后存儲在數據庫中。用戶通過指定存儲過程的名字并給出參數來執行。存儲過程可以包括
24、程序流、邏輯以及對數據庫的查詢,可以接受輸入參數、輸出參數、返回單個或多個結果集以及返回值。存儲過程結合了SQL的數據操作能力和過程化語言的流程控制能力,是SQL的過程化擴展。存儲過程的優點:(1)允許標準組件式編程;(2)能夠實現較快的執行速度;(3)能夠有效降低網絡流量;(4)可被作為一種安全機制來充分利用。在人事信息管理系統中,首先需要創建一個存儲過程,其用于查詢數據庫中每個員工的基本信息;創建存儲過程,用于返回全部男士的工作信息;創建一個存儲過程,用于查詢員工工資信息;創建一個存儲過程,其用于按日期查詢每個職工的出勤情況信息;創建一個存儲過程,按日期查詢各部門的調動信息。觸發器的建立觸
25、發器是一種由事件驅動的特殊的存儲過程,當它被定義在表上時,可看作表的一部分,一旦定義,任何用戶當試圖對表進行增加、刪除或修改操作時,都由服務器自動激活相應的觸發器,即觸發器被請求。由此在DBMS核心層進行集中的完整性控制。觸發器的主要作用就是:能夠實現由主鍵、外鍵以及各種常規數據約束所不能保證的復雜的參照完整性和數據的一致性。所以,觸發器是一種確保數據和業務完整性的較好方法。在人事信息管理系統中,創建觸發器檢查員工的年齡,確保在0-100之間為有效年齡;創建觸發器,在插入、修改、刪除操作記錄時,自動顯示表中內容;創建觸發器防止表中數據被惡意刪除。約束的建立約束是在SQL Sever中實現數據完
26、整性的一種方法,它通過定義可輸入表或表的單個列中的數據的限制條件而自動保持數據庫完整性。SQL Sever中有5種約束:主鍵約束、外鍵約束、唯一性約束、檢查約束和默認約束。每一種數據完整性類型,都由不同的約束類型來保障:域完整性是由默認值或檢查約束予以保障;實體完整性則依靠逐漸或唯一約束來保障;而參照完整性就需要通過外鍵約束來保障了。5.數據庫物理實現數據庫的建立詳細信息創建如下:create database rson(name=renshi_m,filename=e:,size=10mb,maxsize=100mb,filegrowth=1mb),(name=company_n,filen
27、ame=e:,size=10mb,maxsize=100mb,filegrowth= 1mb)log on(name=company_l,filename=e:,size=10mb,maxsize=100mb,filegrowth=1mb)Go數據表的建立創建員工信息表USE rsGOCREATE TABLE dbo.員工信息表(員工編號 char(9) COLLATE Chinese_PRC_CI_AS NOT NULL,姓名 char(8) COLLATE Chinese_PRC_CI_AS NOT NULL,性別 char(2) COLLATE Chinese_PRC_CI_AS NOT
28、 NULL,年齡 int NOT NULL,民族 char(4) COLLATE Chinese_PRC_CI_AS NOT NULL,身份證號 char(一八) COLLATE Chinese_PRC_CI_AS NOT NULL,入職時間 datetime NOT NULL,所在部門編號 char(4) COLLATE Chinese_PRC_CI_AS NOT NULL,x char(11) COLLATE Chinese_PRC_CI_AS NOT NULL,基本工資 int NOT NULL) ON PRIMARYGO創建員工工作信息表USE rsGOCREATE TABLE dbo
29、.員工工作信息表(員工編號 char(9) COLLATE Chinese_PRC_CI_AS NOT NULL,部門編號 char(4) COLLATE Chinese_PRC_CI_AS NOT NULL,職稱 char(6) COLLATE Chinese_PRC_CI_AS NULL,工齡 int NULL) ON PRIMARYGO創建部門信息表USE rsGOCREATE TABLE dbo.部門信息表(部門編號 char(4) COLLATE Chinese_PRC_CI_AS NOT NULL,部門名稱 char(8) COLLATE Chinese_PRC_CI_AS NOT
30、 NULL,部門電話 char(8) COLLATE Chinese_PRC_CI_AS NOT NULL,部門經理 char(8) COLLATE Chinese_PRC_CI_AS NOT NULL) ON PRIMARYGO創建工資信息表USE rsGOCREATE TABLE dbo.工資信息表(員工編號 char(9) COLLATE Chinese_PRC_CI_AS NOT NULL,實上班天數 int NOT NULL,實發工資 int NULL,扣款 int NULL) ON PRIMARYGO創建考勤信息表USE rsGOCREATE TABLE dbo.考勤信息表(員工編
31、號 char(9) COLLATE Chinese_PRC_CI_AS NOT NULL,缺勤 int NULL,遲到 int NULL,早退 int NULL,日期 datetime NOT NULL) ON PRIMARYGO創建員工調動信息表USE rsGOCREATE TABLE dbo.員工調動信息表(員工編號 char(9) COLLATE Chinese_PRC_CI_AS NOT NULL,姓名 char(8) COLLATE Chinese_PRC_CI_AS NOT NULL,原部門編號 char(4) COLLATE Chinese_PRC_CI_AS NULL,新部門編
32、號 char(4) COLLATE Chinese_PRC_CI_AS NULL,調離時間 datetime NULL,調入時間 datetime NULL) ON PRIMARYGO視圖的建立在部門信息表創建視圖USE rsGOCREATE VIEW dbo.部門員工工作信息ASSELECT TOP (100) PERCENT dbo.部門信息表.部門編號AS 部門的編號, dbo.部門信息表.部門名稱AS 部門的名稱, dbo.員工工作信息表.員工編號, dbo.員工信息表.姓名, dbo.員工工作信息表.職稱, dbo.員工工作信息表.工齡FROM dbo.部門信息表INNER JOIN
33、 dbo.員工工作信息表ON dbo.部門信息表.部門編號= dbo.員工工作信息表.部門編號INNER JOIN dbo.員工信息表ON dbo.員工工作信息表.員工編號= dbo.員工信息表.員工編號ORDER BY dbo.員工工作信息表.員工編號GO在工資信息表創建視圖USE rsGOCREATE VIEW dbo.員工工資信息ASSELECT TOP (100) PERCENT dbo.工資信息表.員工編號, dbo.員工信息表.姓名, dbo.工資信息表.實上班天數, dbo.工資信息表.實發工資, dbo.工資信息表.扣款FROM dbo.工資信息表INNER JOIN dbo.
34、員工信息表ON dbo.工資信息表.員工編號= dbo.員工信息表.員工編號ORDER BY dbo.員工信息表.姓名GO在員工工作信息表創建視圖USE rsGOCREATE VIEW dbo.員工工作信息ASSELECT dbo.員工工作信息表.員工編號, dbo.員工信息表.姓名, dbo.員工工作信息表.部門編號, dbo.部門信息表.部門名稱, dbo.員工工作信息表.職稱, dbo.員工工作信息表.工齡FROM dbo.員工工作信息表INNER JOIN dbo.員工信息表ON dbo.員工工作信息表.員工編號= dbo.員工信息表.員工編號INNER JOIN dbo.部門信息表O
35、N dbo.員工工作信息表.部門編號= dbo.部門信息表.部門編號GO在考勤信息表創建視圖USE rsGOCREATE VIEW dbo.員工考勤信息ASSELECT dbo.考勤信息表.員工編號, dbo.考勤信息表.缺勤, dbo.考勤信息表.遲到, dbo.考勤信息表.早退, dbo.考勤信息表.日期, dbo.員工信息表.姓名FROM dbo.考勤信息表INNER JOIN dbo.員工信息表ON dbo.考勤信息表.員工編號= dbo.員工信息表.員工編號GO在員工信息表創建視圖USE rsGOCREATE VIEW dbo.員工信息ASSELECT dbo.員工信息表.員工編號,
36、 dbo.員工信息表.姓名, dbo.員工信息表.年齡, dbo.員工信息表.性別, dbo.員工信息表.x, dbo.員工信息表.所在部門編號, dbo.部門信息表.部門名稱, dbo.員工信息表.入職時間, dbo.員工信息表.身份證號, dbo.員工信息表.民族, dbo.員工信息表.基本工資FROM dbo.員工信息表INNER JOIN dbo.部門信息表ON dbo.員工信息表.所在部門編號= dbo.部門信息表.部門編號GO在員工調動信息表創建視圖USE rsGOCREATE VIEW dbo.各部門員工調動信息ASSELECT TOP (100) PERCENT 部門信息表_1
37、.部門名稱AS 新部門名稱, dbo.員工調動信息表.新部門編號, dbo.員工調動信息表.調入時間, dbo.員工調動信息表.員工編號, dbo.員工調動信息表.姓名, dbo.部門信息表.部門名稱AS 原部門名稱, dbo.部門信息表.部門編號AS 原部門編號, dbo.員工調動信息表.調離時間FROM dbo.部門信息表INNER JOIN dbo.員工調動信息表ON dbo.部門信息表.部門編號= dbo.員工調動信息表.原部門編號INNER JOIN dbo.部門信息表AS 部門信息表_1 ON dbo.員工調動信息表.新部門編號= 部門信息表_1.部門編號ORDER BY 原部門編
38、號GO索引的建立在部門信息表創建索引部門編號唯一索引USE rsGOCREATE UNIQUE NONCLUSTERED INDEX 部門編號 ON dbo.部門信息表 (部門編號 ASC)WITH (SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF) ON PRIMARY部門名稱唯一索引USE rsGOCREATE UNIQUE NONCLUSTERED INDEX 部門名稱 ON dbo.部門信息表 (部門名稱 ASC)WITH (SORT_IN_TEMPDB = OFF, DROP_
39、EXISTING = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF) ON PRIMARY在工資信息表創建索引扣款不唯一索引USE rsGOCREATE NONCLUSTERED INDEX 扣款 ON dbo.工資信息表 (扣款 ASC)WITH (SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF) ON PRIMARY實發工資不唯一索引USE rsGOCREATE NONCLUSTERED INDEX 實發工資 ON dbo.工資信息表 (實發工資 A
40、SC)WITH (SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF) ON PRIMARY在考勤信息表創建索引遲到不唯一索引USE rsGOCREATE NONCLUSTERED INDEX 遲到 ON dbo.考勤信息表 (遲到 ASC)WITH (SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF) ON PRIMARY早退不唯一索引USE rsGOCREATE NONCLUSTER
41、ED INDEX 早退 ON dbo.考勤信息表 (早退 ASC)WITH (SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF) ON PRIMARY在員工調動信息表創建索引原部門編號不唯一索引USE rsGOCREATE NONCLUSTERED INDEX 原部門編號 ON dbo.員工調動信息表 (原部門編號 ASC)WITH (SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF)
42、 ON PRIMARY新部門編號不唯一索引USE rsGOCREATE NONCLUSTERED INDEX 新部門編號 ON dbo.員工調動信息表 (新部門編號 ASC)WITH (SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF) ON PRIMARY在員工工作信息表創建索引工齡不唯一索引USE rsGOCREATE NONCLUSTERED INDEX 工齡 ON dbo.員工工作信息表 (工齡 ASC)WITH (SORT_IN_TEMPDB = OFF, DROP_EXISTI
43、NG = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF) ON PRIMARY職稱不唯一索引USE rsGOCREATE NONCLUSTERED INDEX 職稱 ON dbo.員工工作信息表 (職稱 ASC)WITH (SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF) ON PRIMARY在員工信息表創建索引員工編號唯一索引USE rsGOCREATE UNIQUE NONCLUSTERED INDEX 員工編號 ON dbo.員工信息表 (員工編號
44、 ASC)WITH (SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF) ON PRIMARY姓名不唯一索引USE rsGOCREATE NONCLUSTERED INDEX 姓名 ON dbo.員工信息表 (姓名 ASC)WITH (SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF) ON PRIMARY儲存過程的建立創建存儲過程,返回全部男士的工資信息use rsgo create
45、 procedure gongzuo_maleasselect 員工信息表.姓名,性別,實發工資from 員工信息表,工資信息表where 員工信息表.員工編號=工資信息表.員工編號and 員工信息表.性別=男go創建存儲過程,其用于查詢數據庫中每個員工的基本信息use rsgo create procedure gongzuoasselect 員工信息表.員工編號,姓名,性別,年齡,民族,身份證號,入職時間,x,基本工資from 員工信息表go創建存儲過程,用于按日期統查詢每個職工的出勤信息use rsgo create procedure kaoqinasselect 考勤信息表.日期,員
46、工編號,遲到,早退,缺勤from 考勤信息表go創建一個存儲過程,用于查詢員工工作信息use rsgo create procedure gongziasselect 員工工作信息表.員工編號,姓名,部門編號,職稱,工齡from 員工工作信息表,員工信息表where 員工工作信息表.員工編號=員工信息表.員工編號go創建一個存儲過程,按日期查詢各部門的調動信息use rsgo create procedure diaodongasselect 員工調動信息表.調入時間,員工編號,姓名,新部門編號,原部門編號,調入時間from 員工調動信息表go觸發器的建立創建觸發器檢查員工的年齡,確保在0-1
47、00之間為有效年齡use rsgocreate trigger age_0_100 on 員工信息表for insert,updateas declare x年齡int select 年齡=年齡from insertedif x年齡100 beginrollbackprint(年齡必須在0-100)End創建觸發器,在插入、修改、刪除操作記錄時,自動顯示表中內容use rsgocreate trigger yuangong on 員工工作信息表for insert,update,deleteasselect * from 員工工作信息表創建觸發器防止表中數據被惡意刪除use rsgocreat
48、e trigger noupdate on 部門信息表for updateas beginprint(不允許你惡意刪除本表數據!)rollback transactionreturnend約束的建立在部門信息表建立約束USE rsGOALTER TABLE dbo.部門信息表 WITH CHECK ADD CONSTRAINT CK_部門信息表 CHECK (部門編號NULL)USE rsGOALTER TABLE dbo.部門信息表 WITH CHECK ADD CONSTRAINT CK_部門信息表_1 CHECK (部門名稱NULL)在工資信息表建立約束USE rsGOALTER TABLE dbo.工資信息表 WITH CHECK ADD CONSTRAINT CK_工資信息表 CHECK (員工編號NULL)USE rsGOALTER TABLE dbo.工資信息表 WITH CHECK ADD CONSTRAINT CK_工資信息表_1 CHECK (實上班天數(0)在考勤信息表建立約束USE rsGOALTER TABLE dbo.考勤信息表 WITH CHECK ADD CONSTRAINT CK_考勤信息表 CHECK (員工編號NULL)USE rsGOA
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年紡織化工助劑項目可行性研究報告
- 2025-2030中國煙草行業市場深度調研及發展策略研究報告
- 2025-2030中國滑雪圍嘴褲行業市場發展趨勢與前景展望戰略研究報告
- 2025-2030中國液壓提升機行業市場深度分析及發展趨勢與投資研究報告
- 2025-2030中國泡沫混凝土行業市場發展趨勢與前景展望戰略研究報告
- 2025-2030中國油井干預行業市場發展趨勢與前景展望戰略研究報告
- 2025-2030中國汽車鋼活塞行業市場發展趨勢與前景展望戰略研究報告
- 2025-2030中國擋風玻璃雨刷液行業市場發展趨勢與前景展望戰略研究報告
- 2025-2030中國感應燈行業市場發展趨勢與前景展望戰略研究報告
- 2025-2030中國平跟鞋行業市場運行分析及發展前景與投資研究報告
- 急性心力衰竭試題附答案
- 房室結折返性心動過速
- 光伏工程綠色施工、節能減排方案
- GB/T 18711-2002選煤用磁鐵礦粉試驗方法
- 小學生防溺水安全教育主題班會PPT
- 5030i儀器原理、維護與操作
- 配電屏柜安裝工藝
- 半導體器件物理 課件
- 超星爾雅學習通《中國古典小說巔峰四大名著鑒賞(中國紅樓夢學會)》章節測試含答案
- MBR膜離線清洗方案
- 音樂課件《快樂的節日》(動畫音頻都能播放)
評論
0/150
提交評論