2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩23頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  《數(shù)據(jù)庫類課程設(shè)計》</p><p><b>  系統(tǒng)開發(fā)報告</b></p><p>  學(xué) 號:   ********* </p><p>  姓 名: ****** </p><p>  題 目: 

2、   薪資管理系統(tǒng)   </p><p>  指導(dǎo)教師:  ******    </p><p>  提交時間:  2013年6月1日    </p><p><b>  計算機科學(xué)與應(yīng)用系</b></p><p><b>  目錄</b&g

3、t;</p><p>  第一章 需求分析..............................................................................1</p><p>  第二章 系統(tǒng)功能設(shè)計2</p><p>  第三章 數(shù)據(jù)庫設(shè)計3</p><p>  3.1 數(shù)據(jù)庫設(shè)計.......

4、.....................................................................................3</p><p>  3.2數(shù)據(jù)表設(shè)計.............................................................................................4</p>

5、;<p>  3.3 數(shù)據(jù)庫編程............................................................................................6</p><p>  第四章 功能的實現(xiàn)(使用說明)11</p><p>  4.1實現(xiàn)按照科室錄入個人的基本資料、工資和扣除金額的數(shù)據(jù)..........

6、.............11</p><p>  4.2實現(xiàn)查詢個人詳細(xì)資料、及工資各項明細(xì)........................................................11</p><p>  4.3 計算個人的實際發(fā)放工資.................................................................

7、.................11</p><p>  4.4按科室、職業(yè)分類統(tǒng)計人數(shù)和工資金額...........................................................11</p><p>  4.5 能夠修改工作人員信息............................................................

8、.........................13</p><p><b>  結(jié)束語15</b></p><p>  參考文獻(xiàn).........................................................................................15</p><p>  附錄(

9、源程序)..............................................................................16</p><p>  《數(shù)據(jù)庫類課程設(shè)計》報告評分標(biāo)準(zhǔn)..........................................20</p><p><b>  第一章 需求分析</b><

10、;/p><p>  系統(tǒng)功能分析階段的任務(wù)就是確定該系統(tǒng)要解決的問題及其具體要求。需要通過與用戶的交流和溝通明確對系統(tǒng)的功能要求,最終列出系統(tǒng)可以實現(xiàn)的功能由用戶確認(rèn)。</p><p>  根據(jù)所給出的背景資料:</p><p> ?。?)某單位現(xiàn)有1000名員工,其中有管理人員、財務(wù)人員、技術(shù)人員和銷售人員。</p><p>  (2)該單位下

11、設(shè)4個科室,即經(jīng)理室、財務(wù)科、技術(shù)科和銷售科。</p><p>  (3)工資由基本工資、福利補貼和獎勵工資構(gòu)成,失業(yè)保險和住房公積金在工資中扣除。</p><p>  (4)每個員工的基本資料有姓名、性別、年齡、單位和職業(yè)(如經(jīng)理、工程師、銷售員等)。</p><p>  (5)每月個人的最高工資不超過3000元。工資按月發(fā)放,實際發(fā)放的工資金額為工資減去扣除。&

12、lt;/p><p>  需要實現(xiàn)的功能要求如下:</p><p>  (1)實現(xiàn)按照科室錄入個人的基本資料、工資和扣除金額的數(shù)據(jù)。</p><p>  (2)實現(xiàn)查詢個人詳細(xì)資料、及工資各項明細(xì)</p><p> ?。?)計算個人的實際發(fā)放工資。</p><p> ?。?)按科室、職業(yè)分類統(tǒng)計人數(shù)和工資金額。</p&

13、gt;<p>  (5)能夠刪除辭職人員的數(shù)據(jù)。</p><p>  (6)能夠修改工作人員的信息。</p><p>  第二章 系統(tǒng)功能設(shè)計</p><p>  通過對上述各項功能的分析、分類、綜合,按照模塊化程序設(shè)計的要求,得到如下圖所示的功能模塊圖</p><p>  圖 1系統(tǒng)功能模塊圖</p><p

14、><b>  數(shù)據(jù)庫設(shè)計</b></p><p>  數(shù)據(jù)庫在一個管理信息系統(tǒng)中占有非常重要的地位,數(shù)據(jù)庫結(jié)構(gòu)的好壞將直接影響到應(yīng)用系統(tǒng)操作效率已經(jīng)能否保證數(shù)據(jù)的一致性、完成性和安全性。</p><p><b>  3.1 數(shù)據(jù)庫設(shè)計</b></p><p>  根據(jù)薪資管理系統(tǒng)的功能要求,通過分析系統(tǒng)要設(shè)計的相關(guān)實

15、體一集要收集、存儲和操縱數(shù)據(jù)信息,得到如圖2所示的實體及其屬性圖。</p><p><b>  圖2實體及其屬性圖</b></p><p>  ·員工基本信息(單位編號,員工編號,姓名,性別,職業(yè),年齡)</p><p>  ·單位信息(單位編號,單位名稱)</p><p>  ·薪資信息(

16、基本工資,獎金工資,福利補貼,失業(yè)保險,住房公積金,實際工資)</p><p><b>  3.2數(shù)據(jù)表設(shè)計</b></p><p>  3.2.1 根據(jù)關(guān)系,建立員工信息表表名為“Staff” :</p><p>  CREATE TABLE Staff</p><p>  (SofficeNo VARCHAR(10

17、),</p><p>  SNo VARCHAR(10),</p><p>  Sname VARCHAR(10),</p><p>  Ssex CHAR(2),</p><p>  Sjob VARCHAR(10),</p><p>  Sage SMALLINT,</p><p><

18、b>  );</b></p><p><b>  列名如圖3:</b></p><p><b>  圖3</b></p><p>  3.2.2 用INSERT INTO 語句,向Staff表錄入員工的單位編號、員工編號、姓名、性別、職業(yè)、年齡等各項信息,例如:</p><p>

19、<b>  INSERT</b></p><p>  INTO Staff (SofficeNo,SNo,Sname,Ssex,Sjob,Sage)</p><p>  VALUES('01','0001','李明','男','管理人員',29);</p><p>

20、  打開Staff表即如圖4:</p><p><b>  圖4</b></p><p>  3.2.3 建立單位信息表Office:</p><p>  CREATE TABLE Office</p><p>  (Officename VARCHAR(10),</p><p>  Soff

21、iceNo VARCHAR(10),</p><p><b>  );</b></p><p><b>  列名如圖5:</b></p><p><b>  圖5</b></p><p>  3.2.4 用INSERT INTO 語句,向Office錄入單位的單位名稱、單位

22、編號等部門信息,例如:</p><p><b>  INSERT</b></p><p>  INTO Office (Officename,SofficeNo)</p><p>  VALUES('經(jīng)理室','01');</p><p>  打開Office表即如圖6:</p>

23、;<p><b>  圖6</b></p><p>  3.2.5 建立薪資信息表Salary:</p><p>  CREATE TABLE Salary </p><p>  (SofficeNo VARCHAR(10),</p><p>  Sjob VARCHAR(10),</p>

24、<p>  wage MONEY,/*工資*/</p><p>  bonus MONEY,/*獎金*/</p><p>  welfare MONEY,/*補貼*/</p><p>  Insurance MONEY,/*保險*/</p><p>  HF MONEY,/*住房公積金*/</p><p>

25、  FS MONEY,/*實際工資*/</p><p><b>  );</b></p><p><b>  列名如圖7:</b></p><p><b>  圖7</b></p><p>  3.2.6 用INSERT INTO 語句,向員工信息表Salary錄入基本工資、

26、獎勵工資、福利補貼、失業(yè)保險、住房公積金等薪資明細(xì):</p><p><b>  INSERT</b></p><p>  INTO Salary (SofficeNo,Sjob,wage,bonus,welfare,Insurance,HF,FS)</p><p>  VALUES('01','管理人員',&#

27、39;2000','300','300','200','20',NULL);</p><p>  并利用利用update set 語句,使實際工資=基本工資+獎勵工資+福利補貼-失業(yè)保險-住房公積金;具體語句如下:</p><p>  update Salary set FS = wage+bonus+welfare-

28、Insurance-HF;</p><p>  打開Salary表如圖8:</p><p><b>  圖8</b></p><p><b>  3.3 數(shù)據(jù)庫編程</b></p><p>  3.3.1 建立查詢語句,根據(jù)職業(yè)查詢工資各項明細(xì)。具體代碼如下:</p><p>

29、;  select SofficeNo 部門編號,Sjob 職業(yè),wage 基本工資,bonus 獎勵工資,welfare 福利補貼,</p><p>  Insurance 失業(yè)保險,HF 住房公積金,FS 實際工資</p><p>  from Salary</p><p>  where Sjob='財務(wù)人員';</p><

30、p><b>  查詢結(jié)果如圖9:</b></p><p><b>  圖9</b></p><p>  3.3.2 為了方便查詢,建立名為pro_Salary存儲過程,通過部門號、員工號、職業(yè),查詢具體員工信息和實際工資。具體代碼如下:</p><p>  create procedure pro_Salary<

31、;/p><p>  @officeID VARCHAR(10),/*部門ID*/</p><p>  @staffID VARCHAR(10),/*員工ID*/</p><p>  @job VARCHAR(10)/*職位*/</p><p><b>  AS</b></p><p>  select

32、 A.Sname 姓名,A.Ssex 性別,A.Sjob 職業(yè),A.Sage 年齡,B.Officename 部門名稱,C.wage 基本工資,</p><p>  C.bonus 獎勵工資,C.welfare 福利補貼,C.Insurance 失業(yè)保險,C.HF 住房公積金,C.FS 實際工資</p><p>  from Staff as A,Office as B,Salary as

33、 C</p><p>  where A.SofficeNo=B.SofficeNo</p><p>  and B.SofficeNo=C.SofficeNo</p><p>  and B.SofficeNo=@officeID</p><p>  and A.Sjob=C.Sjob</p><p>  and A

34、.Sjob=@job</p><p>  and A.SNo=@staffID;</p><p>  調(diào)用存儲過程,具體代碼如下:</p><p>  exec pro_Salary @officeID='02',@staffID='0004',@job='管理人員';</p><p><

35、b>  調(diào)用結(jié)果如圖10:</b></p><p><b>  圖10</b></p><p>  3.3.3 根據(jù)工號查詢員工信息,具體代碼如下:</p><p>  select SofficeNo 部門編號,SNo 工號,Sname 姓名,Ssex 性別,Sjob 職業(yè),Sage 年齡</p><p

36、>  from Staff</p><p>  where SNo='0001';</p><p><b>  查詢結(jié)果如圖11:</b></p><p><b>  圖11</b></p><p>  3.3.4 根據(jù)部門名稱查詢部門編號,再根據(jù)部門編號查詢本單位人。具體代

37、碼如下:</p><p>  select Officename,SofficeNo</p><p>  from Office</p><p>  where Officename='技術(shù)科';</p><p>  select count(*) 所查單位的總?cè)藬?shù)</p><p>  from Sta

38、ff</p><p>  where SofficeNo='03';</p><p><b>  查詢結(jié)果如圖12:</b></p><p><b>  圖12</b></p><p>  3.3.5 根據(jù)職業(yè)名稱,查詢本職業(yè)人數(shù),具體代碼如下:</p><p&

39、gt;  select count(*) 所查職業(yè)的總?cè)藬?shù)</p><p>  from Staff</p><p>  where Sjob='管理人員';</p><p><b>  查詢結(jié)果如圖13:</b></p><p><b>  圖13</b></p>&

40、lt;p>  3.3.6 查詢某一職業(yè)人員的實際工資,具體代碼如下:</p><p>  select FS 所查職業(yè)的實際工資</p><p>  from Salary</p><p>  where Sjob='技術(shù)人員';</p><p><b>  查詢結(jié)果如圖14:</b></p&

41、gt;<p><b>  圖14</b></p><p>  3.3.7 為方便用戶查看數(shù)據(jù),創(chuàng)建列名分別為工號、姓名、單位、職業(yè)、實際工資的視圖,具體代碼如下:</p><p>  create view V_salaryinfo</p><p><b>  as</b></p><p&

42、gt;  select A.SNo,A.Sname,A.SofficeNo,A.Sjob,B.FS</p><p>  from Staff A,Salary B</p><p>  where A.SofficeNo=B.SofficeNo and A.Sjob=B.Sjob;</p><p>  查詢試圖的語句代碼如下:</p><p>

43、  select distinct *</p><p>  from V_salaryinfo;</p><p><b>  運行結(jié)果如圖15:</b></p><p><b>  圖15</b></p><p>  3.3.8 在表Staff中建立insert觸發(fā)器,查詢新添加員工的信息,具體

44、代碼如下:</p><p>  create trigger T_Staff</p><p><b>  on Staff</b></p><p>  for insert</p><p><b>  as</b></p><p>  select Sname 新添加的員工,

45、SNo,SofficeNo,Ssex,Sjob,Sage from inserted;</p><p><b>  INSERT</b></p><p>  INTO Staff (SofficeNo,SNo,Sname,Ssex,Sjob,Sage)</p><p>  VALUES('04','0013',&

46、#39;姚遠(yuǎn)','男','銷售人員',25);</p><p><b>  運行結(jié)果如圖16</b></p><p><b>  圖16</b></p><p>  3.3.9 在表Staff中建立delete觸發(fā)器,查詢被刪除員工的信息,具體代碼如下:</p>&l

47、t;p>  create trigger T_Staff1</p><p><b>  on Staff</b></p><p>  for delete</p><p><b>  as</b></p><p>  select Sname 被刪除的員工,SNo,SofficeNo,Ssex

48、,Sjob,Sage from deleted;</p><p><b>  DELETE</b></p><p>  from Staff where SNo='0013' and Sname='姚遠(yuǎn)';</p><p><b>  運行結(jié)果如圖17:</b></p><

49、;p><b>  圖17</b></p><p><b>  第四章 功能的實現(xiàn)</b></p><p>  4.1實現(xiàn)按照科室錄入個人的基本資料、工資和扣除金額的數(shù)據(jù)。實現(xiàn)語句如下:</p><p><b>  INSERT</b></p><p>  INTO Sta

50、ff (SofficeNo,SNo,Sname,Ssex,Sjob,Sage)</p><p>  VALUES('04','0014','韓梅梅','女','銷售人員',29);</p><p>  附:以上是錄入科室編號為04,工號為0014,姓名為韓梅梅,性別為女,職業(yè)為銷售人員,年齡為29,的員工信息。

51、</p><p><b>  運行結(jié)果如圖18:</b></p><p><b>  圖18</b></p><p>  4.2實現(xiàn)查詢個人詳細(xì)資料、及工資各項明細(xì)。具體實現(xiàn)語句如下:</p><p>  exec pro_Salary @officeID='02',@staffID

52、='0004',@job='管理人員';</p><p>  附:以上是調(diào)用名為pro_Salary存儲過程,以實現(xiàn)通過部門號、員工號、職業(yè),查詢具體員工信息和工資各項明細(xì)及實際工資</p><p><b>  運行結(jié)果如圖19:</b></p><p><b>  圖19</b></

53、p><p>  4.3 計算個人的實際發(fā)放工資。具體實現(xiàn)語句如下:</p><p>  update Salary set FS = wage+bonus+welfare-Insurance-HF;</p><p>  附:利用update set 語句,使實際工資=基本工資+獎勵工資+福利補貼-失業(yè)保險-住房公積金</p><p>  4.4按

54、科室、職業(yè)分類統(tǒng)計人數(shù)和工資金額。</p><p>  4.4.1 按科室統(tǒng)計人數(shù),具體實現(xiàn)語句如下:</p><p>  select Officename,SofficeNo</p><p>  from Office</p><p>  where Officename='技術(shù)科';</p><p&g

55、t;  select count(*) 所查單位的總?cè)藬?shù)</p><p>  from Staff</p><p>  where SofficeNo='03';</p><p>  附:根據(jù)部門名稱查詢部門編號,再根據(jù)部門編號查詢本單位人數(shù)</p><p><b>  運行結(jié)果如圖22</b></

56、p><p><b>  圖22</b></p><p>  4.4.2 按科室職業(yè)統(tǒng)計人數(shù),具體實現(xiàn)語句如下:</p><p>  select count(*) 所查職業(yè)的總?cè)藬?shù)</p><p>  from Staff</p><p>  where Sjob='管理人員';<

57、;/p><p><b>  運行結(jié)果如圖23:</b></p><p><b>  圖23</b></p><p>  4.4.3根據(jù)職業(yè)查詢工資金額,具體語句如下:</p><p>  select SofficeNo 部門編號,Sjob 職業(yè),wage 基本工資,bonus 獎勵工資,welfare

58、 福利補貼,</p><p>  Insurance 失業(yè)保險,HF 住房公積金,FS 實際工資</p><p>  from Salary</p><p>  where Sjob='財務(wù)人員';</p><p><b>  運行結(jié)果如圖24:</b></p><p><b

59、>  圖24</b></p><p>  4.4.4根據(jù)科室查詢工資金額,具體語句如下:</p><p>  select SofficeNo 部門編號,Sjob 職業(yè),wage 基本工資,bonus 獎勵工資,welfare 福利補貼,</p><p>  Insurance 失業(yè)保險,HF 住房公積金,FS 實際工資</p>&l

60、t;p>  from Salary</p><p>  where SofficeNo='02';</p><p><b>  運行結(jié)果如圖25:</b></p><p><b>  圖25</b></p><p>  4.4.5 能夠刪除辭職人員的數(shù)據(jù)。具體實現(xiàn)語句如下:&l

61、t;/p><p><b>  DELETE</b></p><p>  from Staff where SNo='0013' and Sname='姚遠(yuǎn)';</p><p><b>  運行結(jié)果如圖26:</b></p><p><b>  圖26</b

62、></p><p>  4.5 能夠修改工作人員信息。具體實現(xiàn)語句如下;</p><p>  update Staff set Sage='24'</p><p>  where SNo='0001';</p><p>  附:修改員工號為“0001”的員工年齡</p><p> 

63、 查詢運行結(jié)果語句如下:</p><p><b>  select *</b></p><p>  from Staff</p><p>  where SNo='0001';</p><p><b>  運行結(jié)果如圖27:</b></p><p><b

64、>  圖27</b></p><p><b>  結(jié)束語</b></p><p>  在課程設(shè)計過程中,深刻體會到,理論和應(yīng)用結(jié)合的重要性。平時課本上學(xué)的一些定義和代碼,在實際應(yīng)用中會出現(xiàn)很多狀況。比如:查詢結(jié)果出現(xiàn)多個重復(fù)現(xiàn)象、查詢結(jié)果為空、或者遇到定義不明確。在解決這些問題的過程中,對于自己的知識面和解決問題的能力都有很大提升。</p>

65、;<p>  當(dāng)然,在編寫代碼時,也遇到很多調(diào)試錯誤。遇到問題是跟同學(xué)交流,向前輩請教也是相當(dāng)有必要的。課本只告訴我們怎么做,卻不能為教會我們具體解決問題和錯誤的方法手段。整個課程設(shè)計過程中,其實我QQ幾乎都是長期在線的。在遇到問題,通過百度搜索,反復(fù)調(diào)試都無法徹底解決時,到班級群里問同班同學(xué)是一個不錯的途徑,大家都在課程設(shè)計,都會遇到這樣那樣的問題,也許我解決不了的問題,正是他們剛剛遇到并已經(jīng)找到解決方法的。另外,在有關(guān)

66、計算機的技術(shù)群,會有很多高手,只要虛心請教,他們是很樂意幫忙解決問題的。有時候,自己一個人反復(fù)檢查半天都調(diào)試不出來的語句,在他們的指點下半分鐘就搞定了。總之,在遇到問題時,不管是利用百度、QQ、學(xué)習(xí)交流群,學(xué)會通過各種渠道找到解決問題的方法很重要。</p><p>  一篇課程設(shè)計幾乎把一學(xué)期學(xué)到的東西都給串起來了。以前課堂上學(xué)的那些定義和代碼變得不再抽象遙遠(yuǎn),在應(yīng)用中真的學(xué)到了很多很多的東西。</p>

67、;<p>  可能我還是比較菜鳥吧!雖然,熬了一星期寫好了一些前臺和后臺的代碼,邏輯卻越來越亂。后來,把做的東西全部推翻,又一步一步重新編寫。依然存在很多不足,還有很多方面有待改進。</p><p><b>  會繼續(xù)加油的!</b></p><p><b>  參考文獻(xiàn):</b></p><p>  [1]

68、 王珊,薩師煊 《數(shù)據(jù)庫系統(tǒng)概論(第四版)》.高等教育出版社,2006</p><p>  [2] John J.Patrick著,劉紅偉 董民輝 等譯《SQL編程基礎(chǔ)(原書第3版)》 機械工業(yè)出版社 2009</p><p>  [3] 湯荷美 周立柱等著《數(shù)據(jù)庫技術(shù)及應(yīng)用》 2011</p><p><b>  附錄:(源程序)</b>&l

69、t;/p><p>  CREATE TABLE Staff</p><p>  (SofficeNo VARCHAR(10),</p><p>  SNo VARCHAR(10),</p><p>  Sname VARCHAR(10),</p><p>  Ssex CHAR(2),</p><p&g

70、t;  Sjob VARCHAR(10),</p><p>  Sage SMALLINT,);</p><p>  /* 新建一個員工信息表名為“Staff” */</p><p>  CREATE TABLE Office</p><p>  (Officename VARCHAR(10),</p><p>

71、  SofficeNo VARCHAR(10),);</p><p>  /* 新建一個部門信息表名為“Office” */</p><p>  CREATE TABLE Salary </p><p>  (SofficeNo VARCHAR(10),</p><p>  Sjob VARCHAR(10),</p>&l

72、t;p>  wage MONEY,/*工資*/</p><p>  bonus MONEY,/*獎金*/</p><p>  welfare MONEY,/*補貼*/</p><p>  Insurance MONEY,/*保險*/</p><p>  HF MONEY,/*住房公積金*/</p><p>  F

73、S MONEY,/*實際工資*/);</p><p>  /* 新建一個薪水信息表名為“Salary” */</p><p><b>  INSERT</b></p><p>  INTO Staff (SofficeNo,SNo,Sname,Ssex,Sjob,Sage)</p><p>  VALUES(

74、9;01','0001','李明','男','管理人員',29);</p><p><b>  INSERT</b></p><p>  INTO Staff (SofficeNo,SNo,Sname,Ssex,Sjob,Sage)</p><p>  VALUES(

75、9;01','0002','金金','女','管理人員',30);</p><p><b>  INSERT</b></p><p>  INTO Staff (SofficeNo,SNo,Sname,Ssex,Sjob,Sage)</p><p>  VALUES(

76、9;01','0003','吳青峰','男','管理人員',35);</p><p><b>  INSERT</b></p><p>  INTO Staff (SofficeNo,SNo,Sname,Ssex,Sjob,Sage)</p><p>  VALUES(&#

77、39;02','0004','李高明','男','管理人員',23);</p><p><b>  INSERT</b></p><p>  INTO Staff (SofficeNo,SNo,Sname,Ssex,Sjob,Sage)</p><p>  VALUES(&

78、#39;02','0005','崔顥','男','財務(wù)人員',25);</p><p><b>  INSERT</b></p><p>  INTO Staff (SofficeNo,SNo,Sname,Ssex,Sjob,Sage)</p><p>  VALUES(&

79、#39;02','0006','李雷','男','財務(wù)人員',23);</p><p><b>  INSERT</b></p><p>  INTO Staff (SofficeNo,SNo,Sname,Ssex,Sjob,Sage)</p><p>  VALUES(&

80、#39;03','0007','高權(quán)威','男','管理人員',27);</p><p><b>  INSERT</b></p><p>  INTO Staff (SofficeNo,SNo,Sname,Ssex,Sjob,Sage)</p><p>  VALUES(

81、'03','0008','魏來','男','技術(shù)人員',25);</p><p><b>  INSERT</b></p><p>  INTO Staff (SofficeNo,SNo,Sname,Ssex,Sjob,Sage)</p><p>  VALUES(

82、'03','0009','師鑫','男','技術(shù)人員',25);</p><p><b>  INSERT</b></p><p>  INTO Staff (SofficeNo,SNo,Sname,Ssex,Sjob,Sage)</p><p>  VALUES(

83、'04','0010','魏一','女','管理人員',30);</p><p><b>  INSERT</b></p><p>  INTO Staff (SofficeNo,SNo,Sname,Ssex,Sjob,Sage)</p><p>  VALUES(

84、'04','0011','宋康','男','銷售人員',25);</p><p><b>  INSERT</b></p><p>  INTO Staff (SofficeNo,SNo,Sname,Ssex,Sjob,Sage)</p><p>  VALUES(

85、'04','0012','苗鵬','男','銷售人員',27);</p><p><b>  INSERT</b></p><p>  INTO Staff (SofficeNo,SNo,Sname,Ssex,Sjob,Sage)</p><p>  VALUES(

86、'04','0014','韓梅梅','女','銷售人員',29);</p><p>  /* 向Staff表錄入員工信息 */</p><p>  select SofficeNo 部門編號,SNo 工號,Sname 姓名,Ssex 性別,Sjob 職業(yè),Sage 年齡</p><p&

87、gt;  from Staff</p><p>  where SNo='0001';</p><p>  /*根據(jù)工號查詢員工信息*/</p><p><b>  INSERT</b></p><p>  INTO Office (Officename,SofficeNo)</p><

88、;p>  VALUES('經(jīng)理室','01');</p><p><b>  INSERT</b></p><p>  INTO Office (Officename,SofficeNo)</p><p>  VALUES('財務(wù)科','02');</p>&l

89、t;p><b>  INSERT</b></p><p>  INTO Office (Officename,SofficeNo)</p><p>  VALUES('技術(shù)科','03');</p><p><b>  INSERT</b></p><p>  

90、INTO Office (Officename,SofficeNo)</p><p>  VALUES('銷售科','04');</p><p>  /* 向Office表錄入部門信息 */</p><p><b>  INSERT</b></p><p>  INTO Salary

91、 (SofficeNo,Sjob,wage,bonus,welfare,Insurance,HF,FS)</p><p>  VALUES('01','管理人員','2000','300','300','200','20',NULL);</p><p><b>  IN

92、SERT</b></p><p>  INTO Salary (SofficeNo,Sjob,wage,bonus,welfare,Insurance,HF,FS)</p><p>  VALUES('02','管理人員','2000','300','300','200','

93、20',NULL);</p><p><b>  INSERT</b></p><p>  INTO Salary (SofficeNo,Sjob,wage,bonus,welfare,Insurance,HF,FS)</p><p>  VALUES('03','管理人員','2000'

94、,'300','300','200','20',NULL);</p><p><b>  INSERT</b></p><p>  INTO Salary (SofficeNo,Sjob,wage,bonus,welfare,Insurance,HF,FS)</p><p>  V

95、ALUES('04','管理人員','2000','300','300','200','20',NULL);</p><p><b>  INSERT</b></p><p>  INTO Salary (SofficeNo,Sjob,wage,bonus,

96、welfare,Insurance,HF,FS)</p><p>  VALUES('02','財務(wù)人員','1800','250','250','200','18',NULL);</p><p><b>  INSERT</b></p>&l

97、t;p>  INTO Salary (SofficeNo,Sjob,wage,bonus,welfare,Insurance,HF,FS)</p><p>  VALUES('03','技術(shù)人員','1700','200','200','200','17',NULL);</p>&l

98、t;p><b>  INSERT</b></p><p>  INTO Salary (SofficeNo,Sjob,wage,bonus,welfare,Insurance,HF,FS)</p><p>  VALUES('04','銷售人員','1000','200','700'

99、,'200','10',NULL);</p><p>  /* 向Salary表錄入薪資信息 */</p><p>  update Salary set FS = wage+bonus+welfare-Insurance-HF;</p><p>  update Staff set Sage='24'</

100、p><p>  where Sname='李明'</p><p><b>  select *</b></p><p>  from Staff</p><p>  where Sname='李明'</p><p>  /*利用update set 語句,使實際工資=基

101、本工資+獎勵工資+福利補貼-失業(yè)保險-住房公積金*/</p><p>  select SofficeNo 部門編號,Sjob 職業(yè),wage 基本工資,bonus 獎勵工資,welfare 福利補貼,</p><p>  Insurance 失業(yè)保險,HF 住房公積金,FS 實際工資</p><p>  from Salary</p><p&g

102、t;  where SofficeNo='02';</p><p>  /*查詢語句,根據(jù)職業(yè)查詢工資各項明細(xì)*/</p><p>  create procedure pro_Salary</p><p>  @officeID VARCHAR(10),/*部門ID*/</p><p>  @staffID VARCHAR(

103、10),/*員工ID*/</p><p>  @job VARCHAR(10)/*職位*/</p><p><b>  AS</b></p><p>  select A.Sname 姓名,A.Ssex 性別,A.Sjob 職業(yè),A.Sage 年齡,B.Officename 部門名稱,C.wage 基本工資,</p><p&

104、gt;  C.bonus 獎勵工資,C.welfare 福利補貼,C.Insurance 失業(yè)保險,C.HF 住房公積金,C.FS 實際工資</p><p>  from Staff as A,Office as B,Salary as C</p><p>  where A.SofficeNo=B.SofficeNo</p><p>  and B.Soffice

105、No=C.SofficeNo</p><p>  and B.SofficeNo=@officeID</p><p>  and A.Sjob=C.Sjob</p><p>  and A.Sjob=@job</p><p>  and A.SNo=@staffID;</p><p>  /*建立名為pro_Salar

106、y存儲過程,通過部門號、員工號、職業(yè),查詢具體員工信息和實際工資*/</p><p>  exec pro_Salary @officeID='02',@staffID='0004',@job='管理人員';</p><p>  /*調(diào)用存儲過程*/</p><p>  select Officename,Soffic

107、eNo</p><p>  from Office</p><p>  where Officename='技術(shù)科';</p><p>  select count(*) 所查單位的總?cè)藬?shù)</p><p>  from Staff</p><p>  where SofficeNo='03

108、9;;</p><p>  /*根據(jù)部門名稱查詢部門編號,再根據(jù)部門編號查詢本單位人數(shù)*/</p><p>  select count(*) 所查職業(yè)的總?cè)藬?shù)</p><p>  from Staff</p><p>  where Sjob='管理人員';</p><p>  /*根據(jù)職業(yè)名稱,查詢

109、本職業(yè)人數(shù)*/</p><p>  select FS 所查職業(yè)的實際工資</p><p>  from Salary</p><p>  where Sjob='技術(shù)人員';</p><p>  /*查詢某一職業(yè)人員的實際工資*/</p><p>  create view V_salaryinfo&

110、lt;/p><p><b>  as</b></p><p>  select A.SNo,A.Sname,A.SofficeNo,A.Sjob,B.FS</p><p>  from Staff A,Salary B</p><p>  where A.SofficeNo=B.SofficeNo and A.Sjob=B.

111、Sjob;</p><p>  /*列名分別為工號、姓名、單位、職業(yè)、實際工資創(chuàng)建視圖*/</p><p>  create trigger T_Staff</p><p><b>  on Staff</b></p><p>  for insert</p><p><b>  as&

112、lt;/b></p><p>  select Sname 新添加的員工,SNo,SofficeNo,Ssex,Sjob,Sage from inserted;</p><p><b>  INSERT</b></p><p>  INTO Staff (SofficeNo,SNo,Sname,Ssex,Sjob,Sage)</p&

113、gt;<p>  VALUES('04','0013','姚遠(yuǎn)','男','銷售人員',25);</p><p>  /*在表Staff中建立insert觸發(fā)器,查詢新添加員工的信息*/</p><p>  create trigger T_Staff1</p><p>&

114、lt;b>  on Staff</b></p><p>  for delete</p><p><b>  as</b></p><p>  select Sname 被刪除的員工,SNo,SofficeNo,Ssex,Sjob,Sage from deleted;</p><p><b>

溫馨提示

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

最新文檔

評論

0/150

提交評論