版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 課程設(shè)計報告</b></p><p> 課程名稱 數(shù)據(jù)庫課程設(shè)計 </p><p> 設(shè)計題目 高校教職工管理系統(tǒng) </p><p> 專業(yè)班級 </p><p> 姓 名
2、 </p><p> 學(xué) 號 </p><p> 指導(dǎo)教師 </p><p> 起止時間 2012年9月3日-9月14日 </p><p> 2012-2013第1學(xué)期《數(shù)據(jù)庫課程設(shè)計》任務(wù)書</p
3、><p><b> 一、課程設(shè)計題目</b></p><p> 選擇下列題目中的一種:</p><p> 1. 小區(qū)物業(yè)管理系統(tǒng) 2. 高校工資管理系統(tǒng)</p><p> 3. 教材管理系統(tǒng) 4. 酒店管理系統(tǒng)</p><p> 5. 高校教職工管理系統(tǒng) 6
4、.圖書管理系統(tǒng)</p><p> 7.火車訂票管理系統(tǒng) 8.企業(yè)人事管理系統(tǒng)</p><p> 9.商品庫存管理系統(tǒng) 10.醫(yī)院藥品管理系統(tǒng)</p><p> 11. 學(xué)生成績管理系統(tǒng) 12. 高校學(xué)籍管理系統(tǒng)</p><p> 13. 航空訂票管理系統(tǒng) 14. 學(xué)費管理系統(tǒng)</p>
5、<p> 15. 城市居民戶籍管理系統(tǒng) 16.超市管理系統(tǒng)</p><p> 17.學(xué)費管理系統(tǒng) 18.車輛管理系統(tǒng)</p><p> 19. 房地產(chǎn)管理系統(tǒng) 20. 企業(yè)物資管理系統(tǒng)</p><p><b> 21、其它自選題目</b></p><p> 注:每
6、個學(xué)生可根據(jù)自己的學(xué)識水平,設(shè)計能力,在指導(dǎo)教師指導(dǎo)下選擇所設(shè)計的題目。</p><p> ?。ㄔ瓌t上選題,學(xué)號1-20題目分別對應(yīng)1-20,21-40分別對應(yīng)1-20,以此類推)</p><p><b> 二、目的與要求 </b></p><p><b> 1、目的 </b></p><p>
7、 通過課程設(shè)計,讓學(xué)生能夠全面了解數(shù)據(jù)庫應(yīng)用系統(tǒng)的整個開發(fā)過程,驗證課堂教學(xué)中的理論;掌握數(shù)據(jù)庫系統(tǒng)的基本概念、基本原理及應(yīng)用技術(shù);掌握SQL語言的定義和各種操作能力,進一步掌握SQL語言的數(shù)據(jù)庫編程技能;學(xué)會利用課堂上已學(xué)過的數(shù)據(jù)庫知識進行數(shù)據(jù)庫設(shè)計;使學(xué)生對開發(fā)信息管理系統(tǒng)有一個總體認(rèn)識,可使學(xué)生得到很好鍛煉,為以后學(xué)習(xí)、工作打下堅實基礎(chǔ)。</p><p><b> 2、基本要求 </b&
8、gt;</p><p> ?。?)要求獨立完成自己題目的課程設(shè)計,如有抄襲,成績按不及格處理。</p><p> ?。?)要求學(xué)生利用數(shù)據(jù)庫原理課程所學(xué)知識和方法獨立完成所布置題目。</p><p> (3)要求所設(shè)計的系統(tǒng)規(guī)模適中,用SQL語句實現(xiàn)基本的增、刪、改、查詢功能。</p><p> ?。?)數(shù)據(jù)庫中至少要包含三個表,且每個表都
9、要滿足3NF,指明主碼、外碼等。</p><p> ?。?)盡量多的使用SQL Server2005中的對象,如:視圖、觸發(fā)器、約束、默認(rèn)、規(guī)則、索引等。</p><p> ?。?)簡單的系統(tǒng)與功能分析,建立數(shù)據(jù)結(jié)構(gòu)表。</p><p> ?。?)每天下機時,要及時將自己的開發(fā)拷貝帶走;上機期間,學(xué)生要服從指導(dǎo)教師的統(tǒng)一安排,遵守機房制度;嚴(yán)格遵守紀(jì)律,不遲到,不早
10、退,無故缺勤者,成績按不及格處理。</p><p><b> 三、設(shè)計方法 </b></p><p> ?。?)設(shè)計題目確定、申報、素材準(zhǔn)備與設(shè)計。</p><p> ?。?)系統(tǒng)需求分析與功能設(shè)計:闡明應(yīng)用系統(tǒng)背景,組織結(jié)構(gòu)情況以及需求分析的過程,并繪制出數(shù)據(jù)流程圖,寫出數(shù)據(jù)字典。</p><p> ?。?)概念結(jié)構(gòu)
11、設(shè)計:根據(jù)概念結(jié)構(gòu)設(shè)計的基本原則,確定概念模型,并闡明分析步驟和理論依據(jù)完成數(shù)據(jù)庫的概念設(shè)計,畫出E-R圖。</p><p> (4)邏輯結(jié)構(gòu)設(shè)計:根據(jù)需求分析和概念模型,將實體及實體間的聯(lián)系按一定的轉(zhuǎn)換規(guī)則轉(zhuǎn)換為關(guān)系模型,寫出轉(zhuǎn)換步驟及相應(yīng)的理論依據(jù),并確定主碼、外碼。按數(shù)據(jù)庫設(shè)計方法和規(guī)范化理論得出符合3NF的邏輯模型。</p><p> (5)利用SQL Server2005建立
12、相應(yīng)的數(shù)據(jù)庫對象。</p><p> (6)利用SQL語句實現(xiàn)相應(yīng)功能。</p><p> ?。?)編寫數(shù)據(jù)庫課程設(shè)計報告并提交相應(yīng)資料與成果。</p><p><b> 四、任務(wù)安排</b></p><p> ?。ㄒ唬r間:1周。具體安排如下: </p><p> 1、確定題目,需
13、求分析。</p><p> 2、概要設(shè)計、邏輯設(shè)計。 </p><p> 3、建立數(shù)據(jù)庫及其操作。</p><p> 4、上機考核驗收答辯。</p><p> 5、寫實習(xí)報告并提交。</p><p> ?。ǘ┑攸c:計算機綜合實驗室</p><p><b> 五、調(diào)試<
14、/b></p><p> 在機房進行調(diào)試,可完成相應(yīng)功能。記錄調(diào)試過程中遇到的問題及解決方法,寫在課程設(shè)計報告中。</p><p><b> 六、答辯與評分標(biāo)準(zhǔn)</b></p><p> 通過設(shè)計答辯方式,并結(jié)合學(xué)生的動手能力,獨立分析解決問題的能力和創(chuàng)新精神,總結(jié)報告和答辯水平以及學(xué)習(xí)態(tài)度綜合考評。成績按五級分進行評定,成績分為優(yōu)
15、、良、中、及格、不及格。</p><p> 1、平時表現(xiàn):30分; </p><p> 2、課程設(shè)計報告:30分; </p><p> 3、課程設(shè)計答辯:40分,其中完成基本功能30分,回答問題10分。</p><p><b> 一、需求分析、</b></p><p> 90年代中期,由
16、于Internet 的迅速普及,使Intranet成為Internet技術(shù)在企業(yè)管理信息系統(tǒng)中的應(yīng)用和延伸,形成了集計算機,計算機網(wǎng)絡(luò)、數(shù)據(jù)庫、分布式計算等于一體的信息技術(shù)綜合體,它打破了時間和地域的界限,使信息交流變得快捷、準(zhǔn)確,為建立現(xiàn)代企業(yè)管理信息系統(tǒng)提供了充足的條件。高校教職工管理系統(tǒng)在此基礎(chǔ)上延伸、擴展,使之上下、內(nèi)外全面貫通。高教教職工管理系統(tǒng)是在適應(yīng)市場需求的客觀前提下,為了滿足各高校管理自己學(xué)校所在的教職員信息而開發(fā)的。
17、該系統(tǒng)的是終目的是要將各位職員的信息放到網(wǎng)絡(luò)上,以方便管理。</p><p> 系統(tǒng)采用模塊化程序設(shè)計方法,既便于系統(tǒng)功能的各種組合和修改,又便于未參與開發(fā)的技術(shù)維護人員補充、維護。該系統(tǒng)具備數(shù)據(jù)庫維護功能,及時根據(jù)用戶需求進行數(shù)據(jù)的添加、刪除、修改、備份等操作。</p><p><b> 二、功能分析、</b></p><p> 根據(jù)分
18、析,該管理系統(tǒng)必須具備如下幾個功能:</p><p> 1.能夠記錄教職工各種基本資料;員工各種信息的輸入,包括員工的基本信息,學(xué)歷信息,婚姻狀況信息,職稱等</p><p> 2.系統(tǒng)使用者能夠查詢信息,能進行對各員工各種信息的修改以及對于轉(zhuǎn)出,辭退,退休員工的信息刪除;</p><p> 3.保障數(shù)據(jù)庫安全,優(yōu)化數(shù)據(jù)庫,,可以在程序中實現(xiàn)數(shù)據(jù)庫備份和恢復(fù)。
19、</p><p><b> 4.界面的友好性。</b></p><p><b> 三、概念設(shè)計、</b></p><p> 在需求分析階段所得到的應(yīng)用需求應(yīng)該首先抽象為信息世界的結(jié)構(gòu),才能更好地、更準(zhǔn)確地用某一DBMS實現(xiàn)這些需求。</p><p> 概念結(jié)構(gòu)的主要特點是:</p>
20、;<p> 能真實、充分地反應(yīng)現(xiàn)實世界,包括事物和事物之間的聯(lián)系,能滿足用戶對數(shù)據(jù)的處理要求,是對現(xiàn)實世界的一個真實模型;</p><p> 易于理解,從而可以用它和不熟悉計算機的用戶交換意見,用戶的積極參與是數(shù)據(jù)庫設(shè)計成功的關(guān)鍵;</p><p> 易于更改,當(dāng)應(yīng)用環(huán)境和應(yīng)用要求改變時,容易對概念模型修改和擴充;</p><p> 易于向關(guān)系
21、、網(wǎng)狀、層次等各種數(shù)據(jù)模型轉(zhuǎn)換。</p><p> 概念結(jié)構(gòu)是各種數(shù)據(jù)模型的共同基礎(chǔ),它比數(shù)據(jù)模型更獨立于機器、更抽象,從而更加穩(wěn)定。</p><p> 描述概念模型的有力工具是E-R模型。</p><p> 下面設(shè)計高校教職工管理系統(tǒng)的E-R圖:</p><p><b> 四、邏輯結(jié)構(gòu)設(shè)計、</b></p
22、><p> 下面將E-R圖轉(zhuǎn)換為關(guān)系模型:</p><p> 員工信息(員工編號,員工姓名,年齡,性別,出生年月,婚姻狀態(tài),政治面貌,學(xué)歷,部門編號,職務(wù),聯(lián)系方式,備注) 主鍵:員工編號; 外碼:部門編號;</p><p> 部門信息(部門編號,部門名稱,部門人數(shù)) 主鍵:部門編號;</p><p> 獎懲信息(獎懲編號,員工編號
23、,獎罰時間,獎罰原因,獎罰地點,備注) 主鍵:獎懲編號, 外碼:員工編號;</p><p> 薪資信息(薪資編號,員工編號,基本工資,福利,獎金,計算方法,實發(fā)工資,發(fā)放日期), 主鍵:薪資編號; 外碼:員工編號。</p><p><b> 五、物理結(jié)構(gòu)設(shè)計、</b></p><p> 數(shù)據(jù)庫物理設(shè)計階段的任務(wù)是根據(jù)具體計算機系統(tǒng)
24、(DBMS和硬件等)的特點,為給定的數(shù)據(jù)庫系統(tǒng)確定合理的存儲結(jié)構(gòu)和存取方法。所謂的“合理”主要有兩個含義:一個是要使設(shè)計出的物理數(shù)據(jù)庫占用較少的存儲空間,另一個對數(shù)據(jù)庫的操作具有盡可能高的速度。主要體現(xiàn)在索引和蔟集的設(shè)置。</p><p><b> 存儲結(jié)構(gòu)</b></p><p> 確定數(shù)據(jù)庫的存儲結(jié)構(gòu)主要指確定數(shù)據(jù)的存放位置和存儲結(jié)構(gòu),包括確定關(guān)系、索引、日志
25、、備份等的存儲安排及存儲結(jié)構(gòu),以及確定系統(tǒng)存儲參數(shù)的配置。</p><p> 將日志文件和數(shù)據(jù)庫對象(表、索引等)分別放在不同的磁盤,可以改進系統(tǒng)的性能,提高系統(tǒng)的安全性。所以,系統(tǒng)應(yīng)將日志文件和數(shù)據(jù)文件存放在不同磁盤上。</p><p><b> 六、數(shù)據(jù)庫的實現(xiàn)、</b></p><p><b> 1. 視圖</b&g
26、t;</p><p> 視圖是一個虛擬表,其內(nèi)容由查詢定義。同真實的表一樣,視圖包含一系列帶有名稱的列和行數(shù)據(jù)。但是,視圖并不在數(shù)據(jù)庫中以存儲的數(shù)據(jù)值集形式存在。行和列數(shù)據(jù)來自由定義視圖的查詢所引用的表,并且在引用視圖時動態(tài)生成。對其中所引用的基礎(chǔ)表來說,視圖的作用類似于篩選。定義視圖的篩選可以來自當(dāng)前或其它數(shù)據(jù)庫的一個或多個表,或者其它視圖。分布式查詢也可用于定義使用多個異類源數(shù)據(jù)的視圖。</p>
27、<p><b> 2. 存儲過程</b></p><p> 存儲過程就是將常用的或很復(fù)雜的工作,預(yù)先用SQL語句寫好并用一個指定的名稱存儲起來, 那么以后要叫數(shù)據(jù)庫提供與已定義好的存儲過程的功能相同的服務(wù)時,只需調(diào)用execute,即可自動完成命令。</p><p> 存儲過程的優(yōu)點: (1).存儲過程只在創(chuàng)造時進行編譯,以后每次執(zhí)行存儲過程都
28、不需再重新編譯,而一般SQL語句每執(zhí)行一次就編譯一次,所以使用存儲過程可提高數(shù)據(jù)庫執(zhí)行速度?! 。?).當(dāng)對數(shù)據(jù)庫進行復(fù)雜操作時(如對多個表進行Update,Insert,Query,Delete時),可將此復(fù)雜操作用存儲過程封裝起來與數(shù)據(jù)庫提供的事務(wù)處理結(jié)合一起使用?!?(3).存儲過程可以重復(fù)使用,可減少數(shù)據(jù)庫開發(fā)人員的工作量 ?。?).安全性高,可設(shè)定只有某此用戶才具有對指定存儲過程的使用權(quán)。</p><
29、;p><b> 3. 觸發(fā)器</b></p><p> 觸發(fā)器是一種特殊類型的存儲過程,它不同于我們前面介紹過的存儲過程。觸發(fā)器主要是通過事件進行觸發(fā)而被執(zhí)行的,而存儲過程可以通過存儲過程名字而被直接調(diào)用。當(dāng)對某一表進行諸如Update、 Insert、 Delete 這些操作時,SQL Server 就會自動執(zhí)行觸發(fā)器所定義的SQL 語句,從而確保對數(shù)據(jù)的處理必須符合由這些SQL
30、 語句所定義的規(guī)則。觸發(fā)器的主要作用就是其能夠?qū)崿F(xiàn)由主鍵和外鍵所不能保證的復(fù)雜的參照完整性和數(shù)據(jù)的一致性。除此之外,觸發(fā)器還有其它許多不同的功能: (1) 強化約束(Enforce restriction) 觸發(fā)器能夠?qū)崿F(xiàn)比CHECK 語句更為復(fù)雜的約束?! ?2) 跟蹤變化Auditing changes 觸發(fā)器可以偵測數(shù)據(jù)庫內(nèi)的操作,從而不允許數(shù)據(jù)庫中未經(jīng)許可的指定更新和變化?! ?3) 級聯(lián)運行(Cascaded
31、 operation)。 觸發(fā)器可以偵測數(shù)據(jù)庫內(nèi)的操作,并自動地級聯(lián)影響整個數(shù)據(jù)庫的各項內(nèi)容。例如,某個表上的觸發(fā)器中包含有對另外一個表的數(shù)據(jù)操作(如刪除,更新,插入)而該操作又導(dǎo)致該表上觸發(fā)器被觸發(fā)?! ?4) 存儲過程的調(diào)</p><p> 在物理結(jié)構(gòu)中,數(shù)據(jù)的基本存取單位是存儲記錄。有了邏輯結(jié)構(gòu)以后,就可以設(shè)計存儲記錄結(jié)構(gòu),一個存儲記錄可以與多個邏輯記錄相對應(yīng)。存儲記錄就包括記錄的組成,數(shù)據(jù)項的類型
32、和長度等。</p><p> 4.下面是各個信息表:</p><p> 5、數(shù)據(jù)庫在SQL Sever2005中顯示如下:</p><p><b> ?。?)數(shù)據(jù)庫:</b></p><p><b> ?。?)員工信息表:</b></p><p><b> ?。?/p>
33、3)部門信息表:</b></p><p><b> (4)薪資信息表:</b></p><p><b> ?。?)獎懲信息表:</b></p><p> ?。?)視圖1:部門部長信息</p><p> ?。?)視圖2:員工基本信息</p><p><b&g
34、t; ?。?)主要代碼:</b></p><p> 1、創(chuàng)建高校教職工管理數(shù)據(jù)庫:</p><p> CREATE DATABASE 高校教職工管理</p><p><b> ON</b></p><p> ( NAME=高校教職工管理DAT,</p><p> FILENA
35、ME='D:\SQL\高校教職工管理DAT.MDF',</p><p><b> SIZE=5,</b></p><p> MAXSIZE=20,</p><p> FILEGROWTH=2</p><p><b> )</b></p><p><
36、;b> LOG ON</b></p><p> ( NAME=高校教職工管理LOG,</p><p> FILENAME='D:\SQL\高校教職工管理LOG.LDF',</p><p><b> SIZE=5,</b></p><p> MAXSIZE=20,</p&g
37、t;<p> FILEGROWTH=2</p><p><b> )</b></p><p> --------------------------------------------------------</p><p><b> 2、創(chuàng)建備份文件</b></p><p>
38、 sp_addumpdevice'disk','BACKUP1','D:\SQL\高校教職工管理backup1.dat'</p><p><b> go</b></p><p> BACKUP DATABASE 高校教職工管理TO BACKUP1</p><p> ------------
39、--------------------------------------------------------</p><p><b> 3、創(chuàng)建表</b></p><p> CREATE TABLE 部門信息表</p><p><b> (</b></p><p> 部門編號INT PR
40、IMARY KEY,</p><p> 部門名稱VARCHAR(20) UNIQUE NOT NULL,</p><p> 部門人數(shù)INT CHECK(部門人數(shù)>=0) NOT NULL,</p><p><b> )</b></p><p> -------------------------------
41、------------</p><p> CREATE TABLE 員工信息表</p><p><b> (</b></p><p> 員工編號INT NOT NULL PRIMARY KEY,</p><p> 員工姓名VARCHAR(20) NOT NULL,</p><p> 年
42、齡INT CHECK(年齡>=1) NOT NULL,</p><p> 性別VARCHAR(2) CHECK(性別IN ('男','女')) NOT NULL,</p><p> 出生年月Datetime NOT NULL,</p><p> 婚姻狀態(tài)VARCHAR(4) CHECK(婚姻狀態(tài)IN ('已婚
43、9;,'未婚')) NOT NULL,</p><p> 政治面貌VARCHAR(20) CHECK(政治面貌IN ('清白','團員','黨員')) NOT NULL,</p><p> 學(xué)歷VARCHAR(20) NOT NULL,</p><p> 部門編號INT NOT NULL,<
44、/p><p> 職務(wù)VARCHAR(20) NOT NULL,</p><p> 聯(lián)系方式VARCHAR(11) UNIQUE NOT NULL,</p><p> 備注VARCHAR(500),</p><p> FOREIGN KEY (部門編號) REFERENCES 部門信息表(部門編號)</p><p>
45、<b> )</b></p><p> ---------------------------------------------------------</p><p> CREATE TABLE 薪資信息表</p><p><b> (</b></p><p> 薪資編號INT PRI
46、MARY KEY,</p><p> 員工編號INT NOT NULL,</p><p> 基本工資INT CHECK(基本工資>=0) NOT NULL,</p><p> 福利INT CHECK(福利>=0) NOT NULL,</p><p> 獎金INT CHECK(獎金>=0) NOT NULL,</
47、p><p> 計算方法VARCHAR(50) NOT NULL,</p><p> 實發(fā)工資INT CHECK(實發(fā)工資>=0), </p><p> 發(fā)放日期Datetime NOT NULL,</p><p> FOREIGN KEY(員工編號) REFERENCES 員工信息表(員工編號)</p><p&g
48、t;<b> )</b></p><p> ----------------------------------------------------------</p><p> CREATE TABLE 獎懲信息表</p><p><b> (</b></p><p> 獎懲編號INT
49、PRIMARY KEY,</p><p> 員工編號INT NOT NULL, </p><p> 獎罰時間Datetime NOT NULL,</p><p> 獎罰原因VARCHAR(100) NOT NULL,</p><p> 獎罰地點VARCHAR(20) NOT NULL,</p><p> 備注
50、VARCHAR(500),</p><p> FOREIGN KEY(員工編號) REFERENCES 員工信息表(員工編號) </p><p><b> )</b></p><p> ---------------------------------------------------------------</p>&l
51、t;p><b> 4、創(chuàng)建視圖:</b></p><p> --視圖員工基本信息:</p><p> CREATE VIEW 員工基本信息(員工姓名,部門名稱,職務(wù),聯(lián)系方式,薪資)</p><p> AS SELECT 員工姓名,部門名稱,職務(wù),聯(lián)系方式,實發(fā)工資</p><p> FROM 員工信息表
52、,部門信息表,薪資信息表</p><p> WHERE 員工信息表.部門編號=部門信息表.部門編號</p><p> AND 員工信息表.員工編號=薪資信息表.員工編號</p><p> -----------------------------------------------------</p><p> --視圖:各部門部長信
53、息</p><p> CREATE VIEW 部門部長信息(部門編號,部門名稱,員工編號,員工名字)</p><p> AS SELECT 部門信息表.部門編號,部門名稱,員工編號,員工姓名</p><p> FROM 員工信息表,部門信息表</p><p> WHERE 員工信息表.部門編號=部門信息表.部門編號</p>
54、<p> AND 員工信息表.職務(wù)='部長'</p><p> --------------------------------------------------------------</p><p><b> 5、創(chuàng)建存儲過程</b></p><p> --存儲過程LOOKWAGE:根據(jù)員工提交的員工
55、編號和工資發(fā)放時間,查看該員工的薪資信息,</p><p> -- 包括員工編號,姓名,實發(fā)薪資,和發(fā)放日期。</p><p> CREATE PROCEDURE LOOKWAGE</p><p> @ID INT,@TIME Datetime</p><p><b> AS</b></p>
56、;<p> SELECT 員工信息表.員工編號,員工姓名,實發(fā)工資,發(fā)放日期</p><p> FROM 員工信息表,薪資信息表</p><p> WHERE 員工信息表.員工編號=薪資信息表.員工編號</p><p> AND 員工信息表.員工編號=@ID AND 發(fā)放日期=@TIME</p><p> --存儲過程
57、LOOKREWARDS:根據(jù)員工提交的員工編號和獎罰時間,查看該員工的獎罰信息,</p><p> -- 包括員工編號,姓名,獎罰原因,獎罰時間。</p><p> CREATE PROCEDURE LOOKREWARDS</p><p> @ID INT,@TIME Datetime</p><p><b>
58、AS</b></p><p> SELECT 員工信息表.員工編號,員工姓名,獎罰原因,獎罰時間</p><p> FROM 員工信息表,獎罰信息表</p><p> WHERE 員工信息表.員工編號=獎罰信息表.員工編號</p><p> AND 員工信息表.員工編號=@ID AND 發(fā)放日期=@TIME</p&g
59、t;<p> ---------------------------------------------------------------------</p><p> --存儲過程Find_Minister:根據(jù)提交的部門編號,查看該部門的部長</p><p> CREATE PROCEDURE Find_Minister</p><p>&
60、lt;b> @ID INT </b></p><p><b> AS</b></p><p> SELECT 部門信息表.部門編號,部門信息表.部門名稱,員工信息表.員工編號,員工姓名</p><p> FROM 員工信息表,部門信息表</p><p> WHERE 員工信息表.部門編號=部門
61、信息表.部門編號</p><p> AND 員工信息表.職務(wù)='部長'</p><p> -------------------------------------------------------------------</p><p><b> --6、創(chuàng)建觸發(fā)器</b></p><p>
62、--觸發(fā)器workerid:要求員工信息表中的員工編號被修改時,薪資信息表</p><p> -- 獎懲信息表中的員工編號也被修改。</p><p> CREATE TRIGGER WORKERID ON 員工信息表</p><p> FOR UPDATE</p><p><b> AS </b><
63、/p><p><b> BEGIN</b></p><p> IF(UPDATE(員工編號))</p><p><b> BEGIN </b></p><p> UPDATE 薪資信息表</p><p> SET 薪資信息表.員工編號=(SELECT 員工編號FROM
64、inserted)</p><p> WHERE 薪資信息表.員工編號=(SELECT 員工編號FROM deleted)</p><p> UPDATE 獎懲信息表</p><p> SET 獎懲信息表.員工編號=(SELECT 員工編號FROM inserted)</p><p> WHERE 獎懲信息表.員工編號=(SELECT
65、 員工編號FROM deleted)</p><p><b> END</b></p><p><b> END</b></p><p> ------------------------------------------------------------------</p><p>
66、--觸發(fā)器CHECK_EXIST:</p><p> -- 向員工信息表插入一條記錄時,檢查該記錄的部門信息在部門信息表</p><p> -- 是否存在,若不存在則不允許插入。</p><p> CREATE TRIGGER CHECK_EXIST</p><p><b> ON 員工信息表</b>&
67、lt;/p><p> FOR INSERT</p><p><b> AS </b></p><p> IF EXISTS(SELECT * FROM inserted a</p><p> WHERE a.部門編號NOT IN (SELECT 部門信息表.部門編號FROM 部門信息表))</p>&l
68、t;p><b> BEGIN</b></p><p> RAISERROR('該部門不存在!!',16,1)</p><p> ROLLBACK TRANSACTION --撤銷剛才的操作,恢復(fù)到原來的狀態(tài)</p><p><b> END</b></p><p>
69、; ---------------------------------------------------------------------</p><p> --觸發(fā)器COUNT_STAFF</p><p> -- 向員工信息表插入一條記錄時,該員工所在的部門人數(shù)加.</p><p> CREATE TRIGGER COUNT_STAFF</
70、p><p><b> ON 員工信息表</b></p><p> AFTER INSERT</p><p><b> AS</b></p><p><b> BEGIN</b></p><p> UPDATE 部門信息表</p>&l
71、t;p> SET 部門人數(shù)=部門人數(shù)+1 </p><p> WHERE 部門編號IN (SELECT 部門編號FROM inserted)</p><p><b> END</b></p><p> ------------------------------------------------------------</
72、p><p> --觸發(fā)器departid:要求部門信息中的部門編號被修改時,員工信息表中員工</p><p> --所屬部門編號也被修改。</p><p> CREATE TRIGGER departid ON 部門信息表</p><p> FOR UPDATE</p><p><b> AS <
73、/b></p><p><b> BEGIN</b></p><p> IF(UPDATE(部門編號))</p><p> UPDATE 員工信息表</p><p> SET 員工信息表.部門編號=(SELECT 部門編號FROM inserted)</p><p> WHERE
74、 員工信息表.部門編號=(SELECT 部門編號FROM inserted)</p><p><b> END</b></p><p> ---------------------------------------------------------------</p><p> --觸發(fā)器CHECK_DELETE:刪除員工記錄時,該員
75、工所在部門人數(shù)減.</p><p> CREATE TRIGGER CHECK_DELETE</p><p><b> ON 員工信息表</b></p><p> FOR DELETE</p><p><b> AS</b></p><p><b> BE
76、GIN</b></p><p> UPDATE 部門信息表</p><p> SET 部門人數(shù)=部門人數(shù)-1 </p><p> WHERE 部門編號IN (SELECT 部門編號FROM inserted)</p><p><b> END </b></p><p><
77、;b> 總結(jié)、</b></p><p> 在本學(xué)期對數(shù)據(jù)庫的學(xué)習(xí)和在課程設(shè)計的制作中,非常感謝老師的耐心講解與指導(dǎo)。在設(shè)計過程中運用較多的是老師在上課時候講解的例子,受益匪淺。同時也學(xué)到了對問題的研究和思維方法。這也對本次課程設(shè)計的制作起到了積極的幫助和影響。也加深了對數(shù)據(jù)庫的理解,對數(shù)據(jù)庫操作也有了進一步的了解。</p><p> 在對高校教職工管理系統(tǒng)的開發(fā)過程
78、中,我學(xué)到了許多有關(guān)數(shù)據(jù)庫管理軟件設(shè)計的東西。在設(shè)計過程中,逐步了解到書本上的知識很重要,作為最基礎(chǔ)的部分,帶給我的是新的視角。使我重新認(rèn)識了數(shù)據(jù)庫,對數(shù)據(jù)庫的興趣也明顯增加了許多。最大的收獲莫過于對與系統(tǒng)的前期分析??梢詮囊粋€大的角度來判斷整個系統(tǒng)的性能,從而分析出需要創(chuàng)建哪些表實現(xiàn)整體的功能。</p><p> 當(dāng)然在設(shè)計中還有很多不足的地方。對于這樣的軟件開發(fā),由于沒有相應(yīng)的切合實際的需求分析,所以在開發(fā)
79、過程中也遇到了許多棘手的問題。對于數(shù)據(jù)庫的操作不夠熟練,在整個系統(tǒng)的考慮方面也有些許不足。但是,我會在今后的學(xué)習(xí)中,加深自己在數(shù)據(jù)庫方面的培養(yǎng),提高自己對與建立數(shù)據(jù)庫時候的分析以及應(yīng)用的能力。</p><p><b> 參考文獻</b></p><p> [1] 胡師彥. 微軟SQL Server2000數(shù)據(jù)庫的特點及查詢優(yōu)化研究[J]. 蘭州工業(yè)高等??茖W(xué)校學(xué)報
80、, 2002,(01). </p><p> [2] 王西文,張廣智. 淺談SQL Server應(yīng)用方法和技巧[J]. 山東水利, 2002,(12). </p><p> [3] 何思文. 基于SQL Server 2000的數(shù)據(jù)倉庫的實現(xiàn)[J]. 廣東科技, 2004,(05). </p><p> [4] 白青海,張善勇,鄭瑛. ADO與SQL SERV
81、ER 2000數(shù)據(jù)庫應(yīng)用程序開發(fā)探討[J]. 內(nèi)蒙古民族大學(xué)學(xué)報(自然科學(xué)版), 2003,(02). </p><p> [5] 李丹. 淺談SQL Server 2000中高性能的備份與恢復(fù)[J]. 河北工程技術(shù)職業(yè)學(xué)院學(xué)報, 2004,(02). </p><p> [6] 李欣苓. SQL Server 2000中幾個系統(tǒng)存儲過程的應(yīng)用[J]. 水利水文自動化, 2003,(0
82、1). </p><p> [7]余建英,何旭洪.PwerBuilder數(shù)據(jù)庫系統(tǒng)開發(fā)實力導(dǎo)航(第二版).北京.人民郵電出版社.2004.4.179~239.</p><p> [8]王晟,王松,劉強.數(shù)據(jù)庫開發(fā)經(jīng)典案例解析.北京.清華大學(xué)出版社.2005.7.310~364.</p><p> [9]王珊,薩師煊.數(shù)據(jù)庫系統(tǒng)概論(第四版).北京.高等教育出版
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)庫課程設(shè)計---教職工管理系統(tǒng)
- 教職工簽到系統(tǒng)課程設(shè)計
- 數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計--職工考勤管理系統(tǒng)數(shù)據(jù)庫設(shè)計
- 數(shù)據(jù)庫課程設(shè)計--數(shù)據(jù)庫設(shè)計—公司管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計---職工工資管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計--高校工資管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計--高校學(xué)生選課管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計--高校工資管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計---職工考勤管理信息系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計-- 職工考勤管理信息系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計--職工考勤管理信息系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計---機房管理系統(tǒng)數(shù)據(jù)庫設(shè)計
- 數(shù)據(jù)庫課程設(shè)計--職工考勤管理信息系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計--職工考勤管理信息系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計---圖書管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計--工資管理系統(tǒng)數(shù)據(jù)庫設(shè)計
- 數(shù)據(jù)庫課程設(shè)計-高校圖書館管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計-酒店管理系統(tǒng)課程設(shè)計
- 數(shù)據(jù)庫原理課程設(shè)計---教室管理系統(tǒng)數(shù)據(jù)庫設(shè)計
- 數(shù)據(jù)庫課程設(shè)計--bbs系統(tǒng)數(shù)據(jù)庫設(shè)計
評論
0/150
提交評論