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