版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 《數(shù)據(jù)庫(kù)系統(tǒng)概論課程名稱》</p><p><b> 課程設(shè)計(jì)報(bào)告</b></p><p><b> 計(jì)算機(jī)學(xué)院</b></p><p> 2017年12月8日</p><p><b> 目錄</b></p><p> 一
2、、 設(shè)計(jì)內(nèi)容及要求1</p><p> 1.1系統(tǒng)功能概述1</p><p><b> 二、 概要設(shè)計(jì)2</b></p><p> 2.1系統(tǒng)可行性分析2</p><p> 2.2系統(tǒng)需求分析3</p><p> 2.2系統(tǒng)功能結(jié)構(gòu)圖4</p><p>
3、; 2.3開(kāi)發(fā)環(huán)境及工具4</p><p> 三、設(shè)計(jì)過(guò)程或程序代碼5</p><p> 3.0系統(tǒng)設(shè)計(jì)思想5</p><p> 3.1數(shù)據(jù)庫(kù)需求分析5</p><p> 3.2數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)5</p><p><b> 3.3數(shù)據(jù)字典8</b></p>
4、<p> 3.4觸發(fā)器設(shè)計(jì)9</p><p> 3.5 存儲(chǔ)過(guò)程設(shè)計(jì)10</p><p> 3.6 視圖設(shè)計(jì)12</p><p> 四、設(shè)計(jì)結(jié)果與分析14</p><p><b> 結(jié) 論18</b></p><p><b> 參考文獻(xiàn)19</b
5、></p><p><b> 附 錄20</b></p><p> 一、 設(shè)計(jì)內(nèi)容及要求</p><p><b> 1.1系統(tǒng)功能概述</b></p><p> 經(jīng)過(guò)實(shí)際考察和分析,高等院校學(xué)籍管理系統(tǒng)包括八個(gè)模塊,相應(yīng)能實(shí)現(xiàn)以下主要功能: </p><
6、;p> 科研人員信息管理:包括科研人員信息數(shù)據(jù)的錄入、修改與刪除等功能。</p><p> 科研項(xiàng)目信息管理:包括科研項(xiàng)目信息的錄入、修改與刪除等功能。 </p><p> 科研論文信息管理:包括科研人員錄入的論文信息的錄入、修改與刪除等功能。 </p><p> 科研著作信息管理:包括科研人員錄入的著作信息的錄入、修改與刪除等功能
7、。 </p><p> 獲獎(jiǎng)信息管理:包括科研人員獲獎(jiǎng)信息的錄入、修改與刪除等功能。 </p><p> 年度科研分的計(jì)算:根據(jù)科研人員獲獎(jiǎng)給予科研分,并對(duì)其進(jìn)行統(tǒng)計(jì)。 </p><p> 系統(tǒng)管理員管理:包括系統(tǒng)用戶數(shù)據(jù)的錄入、修改與刪除等功能。 </p><p> 數(shù)據(jù)查詢:包括科研人員信息
8、的查詢和科研人員個(gè)人論文和著作的查詢以及科研人員獲獎(jiǎng)情況的查詢等功能。</p><p> 1.2系統(tǒng)的開(kāi)發(fā)環(huán)境</p><p> 1.2.1 開(kāi)發(fā)環(huán)境的選擇</p><p> 開(kāi)發(fā)與運(yùn)行的環(huán)境的選擇會(huì)影響到數(shù)據(jù)庫(kù)設(shè)計(jì),本系統(tǒng)開(kāi)發(fā)與運(yùn)行環(huán)境如下: </p><p> 開(kāi)發(fā)環(huán)境:Windows10 企業(yè)版 ?
9、;</p><p> 數(shù)據(jù)庫(kù)管理系統(tǒng):SQL Server 2014</p><p> 本系統(tǒng)在Windows10企業(yè)版開(kāi)發(fā)環(huán)境下,并使用SQL Server 2014作為數(shù)據(jù)庫(kù)管理系統(tǒng),來(lái)實(shí)現(xiàn)高校科研管理系統(tǒng)的各個(gè)模塊和它們的功能,形成一個(gè)令多數(shù)學(xué)校滿意的科研管理系統(tǒng)。</p><p> 1.2.2 SQL&
10、#160;server 2014簡(jiǎn)介 </p><p> Microsoft SQL Server 2014已經(jīng)內(nèi)置最新的安全、功能更新。微軟將在愚人節(jié),即Build2014開(kāi)發(fā)者大會(huì)期間開(kāi)放SQL Server 2014資源下載服務(wù)。 Microsoft SQL Server 2014為市場(chǎng)帶來(lái)了部署到核心數(shù)據(jù)庫(kù)中的新內(nèi)存功能,包括內(nèi)
11、存 OLTP,它是對(duì)市場(chǎng)上大多數(shù)綜合內(nèi)存數(shù)據(jù)庫(kù)解決方案的現(xiàn)有內(nèi)存數(shù)據(jù)倉(cāng)庫(kù)和 BI 功能的補(bǔ)充。 SQL Server 2014 還提供新的云功能,以簡(jiǎn)化 SQL 數(shù)據(jù)庫(kù)對(duì)云技術(shù)的采用并幫助您開(kāi)創(chuàng)新的混合方案。</p><p><b> 二、 概要設(shè)計(jì)</b></p><p> 2.1系統(tǒng)可行性分析</p
12、><p> 2.1.1 目標(biāo)可行性</p><p> 隨著學(xué)校的規(guī)模不斷擴(kuò)大,學(xué)生數(shù)量急劇增加,有關(guān)學(xué)生的各種信息量也成倍增長(zhǎng),因此對(duì)教育行業(yè)的多元信息進(jìn)行有效的管理工作,一套現(xiàn)代化、自動(dòng)化、智能化、人性化的學(xué)生成績(jī)管理系統(tǒng)可減輕了學(xué)院教務(wù)人員管理的工作量,縮小開(kāi)支,提高工作效率和準(zhǔn)確率,使其變得更具有條理性,科學(xué)性。</p><p> 由于本系統(tǒng)管理的對(duì)象簡(jiǎn)單,
13、且每個(gè)數(shù)據(jù)內(nèi)容之間都具有較強(qiáng)的關(guān)聯(lián)性,涉及過(guò)程并不是很復(fù)雜。因此比較適合于采用數(shù)據(jù)庫(kù)管理。</p><p> 2.1.2 技術(shù)可行性</p><p> 本系統(tǒng)采用目前被廣泛使用的C#開(kāi)發(fā)技術(shù)、SQL Server 2008數(shù)據(jù)庫(kù)技術(shù)和Windows Forms窗體進(jìn)行開(kāi)發(fā)設(shè)計(jì),是一個(gè)客戶機(jī)/服務(wù)器(C/S)模式。首先,c#是微軟為.NET量身定做的開(kāi)發(fā)語(yǔ)言集合了C/C++和VB的雙重優(yōu)
14、點(diǎn),具有簡(jiǎn)易型、靈活性、移植性強(qiáng)等特點(diǎn),同時(shí)使用Visual Studio 2008作為開(kāi)發(fā)平臺(tái),對(duì)于開(kāi)發(fā)中小系統(tǒng)來(lái)說(shuō),這種開(kāi)發(fā)環(huán)境是完全沒(méi)有問(wèn)題的。其次,本系統(tǒng)采用SQL Server 2008數(shù)據(jù)庫(kù)。到目前為止,SQL數(shù)據(jù)庫(kù)仍然是使用最廣泛的一種數(shù)據(jù)庫(kù)語(yǔ)言,因此本系統(tǒng)采用SQL Server 2008,在系統(tǒng)安全性、可用性和高穩(wěn)定性上又有了很大的提升。再次,本系統(tǒng)的操作環(huán)境采用Windows操作系統(tǒng),可以為本系統(tǒng)的開(kāi)發(fā)提供良好的穩(wěn)定
15、性。最后,考慮到三者兼容的問(wèn)題,由于三者都屬于微軟公司的產(chǎn)品,所以兼容性上不存在問(wèn)題。硬件方面,采用標(biāo)準(zhǔn)的服務(wù)器硬件配置,能滿足本系統(tǒng)的要求。綜上所述,本系統(tǒng)的技術(shù)可行性不存在問(wèn)題。 </p><p> 2.1.3經(jīng)濟(jì)可行性</p><p> 完成本系統(tǒng)需要硬件和軟件兩方面的支持。硬件方面需要開(kāi)發(fā)服務(wù)器一臺(tái),個(gè)人電腦在此可作為服務(wù)器使用;軟件方面,由于本系統(tǒng)屬于小型管理系統(tǒng),利用Vi
16、sual Studio 2008和SQL Server 2008數(shù)據(jù)庫(kù)開(kāi)發(fā)工具即可實(shí)現(xiàn)。開(kāi)發(fā)時(shí)間短,經(jīng)濟(jì)成本低。</p><p><b> 2.2系統(tǒng)需求分析</b></p><p> 高??蒲泄芾硭O(shè)計(jì)的事務(wù)非常繁雜,涉及到校科研處、各個(gè)院系的科研管理以及個(gè)人對(duì)科研信息的查詢統(tǒng)計(jì)等。所設(shè)計(jì)的系統(tǒng)既要有利于科研處的監(jiān)督管理又要有利于各個(gè)系及教師的分工協(xié)作。系統(tǒng)功能
17、主要包括??蒲刑幙蒲泄芾?、院系(或部門)科研管理、個(gè)人科研信息查詢、校級(jí)科研項(xiàng)目整體信息管理??梢詣澐譃榭蒲行畔⒕S護(hù)、科研信息查詢與統(tǒng)計(jì)、科研信息報(bào)表、科研信息分析、校級(jí)課題申報(bào)、審批、結(jié)題、其它處理等操作;其中科研信息應(yīng)細(xì)分為學(xué)術(shù)論文、科研項(xiàng)目、科研成果、科研獎(jiǎng)勵(lì)等信息。 </p><p> 由于本系統(tǒng)是直接面向網(wǎng)上辦公的,必須適應(yīng)所服務(wù)環(huán)境的各類操作人員,主要包括學(xué)??蒲刑帯⒏髟合?或部門)、普通
18、教師個(gè)人(或其他瀏覽者)。 </p><p> ①普通教師個(gè)人(或其他瀏覽者) </p><p> 普通教師個(gè)人(或其他瀏覽者)只能按姓名來(lái)瀏覽個(gè)人的科研信息、進(jìn)行統(tǒng)計(jì)打印,個(gè)人的科研信息(論文、著作、項(xiàng)目成果等)必須提交本部門審核入錄。 </p><p> ?、?#160;各院系(或部門) </p><
19、;p> 各院系(或部門)主要職責(zé)是對(duì)本部門員工的論文、科研項(xiàng)目、科研成果、獎(jiǎng)勵(lì)等信息進(jìn)行審核后輸入到本系統(tǒng)數(shù)據(jù)庫(kù)中,查詢本部門在某時(shí)間內(nèi)的科研信息、統(tǒng)計(jì)科研情況、打印相關(guān)資料等,同時(shí)對(duì)本部門的錯(cuò)誤錄入信息進(jìn)行修改和維護(hù)。 </p><p><b> ?、劭蒲刑?#160;</b></p><p> 主要管理本校的員工信息、論文、各級(jí)各類科研項(xiàng)目和成
20、果、科研獎(jiǎng)勵(lì)等常規(guī)工作,同時(shí),管理校級(jí)課題的申報(bào)、審批、結(jié)題等管理,同時(shí),監(jiān)控系統(tǒng)運(yùn)行和各部門的情況。</p><p> 2.2系統(tǒng)功能結(jié)構(gòu)圖</p><p> 圖2.2系統(tǒng)功能結(jié)構(gòu)圖</p><p> 2.3開(kāi)發(fā)環(huán)境及工具</p><p> 本系統(tǒng)開(kāi)發(fā)時(shí)所使用的相關(guān)開(kāi)發(fā)環(huán)境和工具如下:</p><p> 操
21、作系統(tǒng):Microsoft Windows10 企業(yè)版</p><p> 數(shù)據(jù)庫(kù):Microsoft SQL Server 2014</p><p> 繪圖軟件:Microsoft Visio 2005</p><p> 三、設(shè)計(jì)過(guò)程或程序代碼</p><p><b> 3.0系統(tǒng)設(shè)計(jì)思想</b></p&g
22、t;<p> 隨著網(wǎng)絡(luò)的日益普遍化,網(wǎng)絡(luò)的安全將顯得非常重要,從數(shù)據(jù)庫(kù)級(jí)、服務(wù)器級(jí)和應(yīng)用程序級(jí)綜合考慮,在科研管理系統(tǒng)中要根據(jù)不同用戶,設(shè)置不同的權(quán)限、不同的初始化菜單。在本系統(tǒng)中,數(shù)據(jù)庫(kù)的安全主要通過(guò)數(shù)據(jù)庫(kù)的存取控制機(jī)制實(shí)現(xiàn)的。首先定義各類管理人員的操作權(quán)限即角色,其次定義數(shù)據(jù)庫(kù)登錄,最后依據(jù)用戶權(quán)限表將登錄分配為相應(yīng)的角色。</p><p> 3.1數(shù)據(jù)庫(kù)需求分析</p>&l
23、t;p> 經(jīng)過(guò)實(shí)際考察和分析,高等院校學(xué)籍管理系統(tǒng)包括八個(gè)模塊,相應(yīng)能實(shí)現(xiàn)以下主要功能: </p><p> 科研人員信息管理:包括科研人員信息數(shù)據(jù)的錄入、修改與刪除等功能。</p><p> 科研項(xiàng)目信息管理:包括科研項(xiàng)目信息的錄入、修改與刪除等功能。 </p><p> 科研論文信息管理:包括科研人員錄入的論文信息的錄入、修改與
24、刪除等功能。 </p><p> 科研著作信息管理:包括科研人員錄入的著作信息的錄入、修改與刪除等功能。 </p><p> 獲獎(jiǎng)信息管理:包括科研人員獲獎(jiǎng)信息的錄入、修改與刪除等功能。 </p><p> 年度科研分的計(jì)算:根據(jù)科研人員獲獎(jiǎng)給予科研分,并對(duì)其進(jìn)行統(tǒng)計(jì)。 </p><p> 系統(tǒng)
25、管理員管理:包括系統(tǒng)用戶數(shù)據(jù)的錄入、修改與刪除等功能。 </p><p> 數(shù)據(jù)查詢:包括科研人員信息的查詢和科研人員個(gè)人論文和著作的查詢以及科研人員獲獎(jiǎng)情況的查詢等功能。</p><p> 3.2數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)</p><p> 概念結(jié)構(gòu)設(shè)計(jì)階段是整個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)的關(guān)鍵,它通過(guò)對(duì)用戶需求進(jìn)行綜合、歸納與抽象,形成一個(gè)獨(dú)立于具體的概念模型。根據(jù)數(shù)據(jù)
26、庫(kù)需求分析的結(jié)果,就可以確認(rèn)程序中所包含的實(shí)體及實(shí)體間的關(guān)系,作為數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)的基礎(chǔ)與指導(dǎo)。根據(jù)本系統(tǒng)的需要,可以歸納出以下實(shí)體:部門、職務(wù)、職稱、系部和科研項(xiàng)目。各實(shí)體間的E-R圖如下所示。</p><p> 部門E-R圖如圖3.1(1)所示:</p><p> 部門E-R圖3.1(1)</p><p> 主要實(shí)體E-R圖如圖3.2(2)所示</
27、p><p> 主要實(shí)體E-R圖如圖3.2(2)</p><p> 職務(wù)E-R圖如圖3.3(3)所示:</p><p> 職務(wù)E-R圖如圖3.3(3)</p><p><b> 3.3數(shù)據(jù)字典</b></p><p> department</p><p><b&
28、gt; Faculty</b></p><p><b> Teacher</b></p><p><b> Employee</b></p><p><b> Title</b></p><p><b> Project</b><
29、;/p><p><b> 3.4觸發(fā)器設(shè)計(jì)</b></p><p> 3.4.1科研計(jì)劃表添加科研記錄時(shí),修改其驗(yàn)收狀態(tài)為“未驗(yàn)收”</p><p> create trigger [dbo].[tgr_project_insert]</p><p> on project </p><p>
30、 for insert --插入觸發(fā)</p><p><b> as</b></p><p> update project</p><p> set Checking='未驗(yàn)收'</p><p> 創(chuàng)建成功,如圖3.4.1所示: 圖3.4.1 科研計(jì)劃表修改觸發(fā)器<
31、/p><p> 3.4.2科研計(jì)劃表驗(yàn)收項(xiàng)目時(shí)自動(dòng)修改項(xiàng)目的驗(yàn)收標(biāo)志為“驗(yàn)收通過(guò)”</p><p> create trigger [dbo].[tgr_project_insert_mark]</p><p> on project </p><p> for update</p><p><b>
32、 as</b></p><p><b> begin</b></p><p> if update(Checking)</p><p> update project set Checking='驗(yàn)收通過(guò)'</p><p><b> end</b></p&g
33、t;<p> 創(chuàng)建成功,如圖3.4.2所示: 圖3.4.2 科研計(jì)劃表修改觸發(fā)器</p><p> 3.4.3部門表禁止修改部門表中“部門名”“部門號(hào)”等重要的字段</p><p> create trigger [dbo].[update_department]</p><p> on department<
34、;/p><p> for update</p><p><b> as</b></p><p> if(update(DeptNo)or update(DeptName))</p><p><b> begin </b></p><p> print'你想作甚,
35、基本數(shù)據(jù)不能修改?。?!'</p><p> rollback transaction</p><p><b> end</b></p><p><b> else</b></p><p> print'修改成功'</p><p> selec
36、t *from department </p><p> 創(chuàng)建成功,如圖3.4.3所示: 圖3.4.3科研計(jì)劃表修改觸發(fā)器</p><p> 3.5 存儲(chǔ)過(guò)程設(shè)計(jì)</p><p> 存儲(chǔ)過(guò)程是SQL語(yǔ)句和可選控制流語(yǔ)句的預(yù)編譯集合,以一個(gè)名稱存儲(chǔ)并作為一個(gè)單元處理。存儲(chǔ)過(guò)程存儲(chǔ)在數(shù)據(jù)庫(kù)內(nèi),可由應(yīng)用程序通過(guò)一個(gè)調(diào)用執(zhí)行。它有如下優(yōu)點(diǎn):</p&
37、gt;<p> ?。?)允許模塊化程序設(shè)計(jì)。存儲(chǔ)過(guò)程一旦創(chuàng)建,以后即可在程序中調(diào)用任意多次</p><p> (2)可以減少網(wǎng)絡(luò)通信流量,一個(gè)需要數(shù)百行Transact-SQL代碼的操作可以通過(guò)一條執(zhí)行過(guò)程代碼的語(yǔ)句執(zhí)行,而不需要在網(wǎng)絡(luò)中發(fā)送數(shù)百行代碼。</p><p> ?。?)允許更快執(zhí)行。存儲(chǔ)過(guò)程只在第一次執(zhí)行時(shí)需要編譯且被存儲(chǔ)在存儲(chǔ)器中,其他次執(zhí)行不必由數(shù)據(jù)引擎再編
38、譯,提高了執(zhí)行速度。</p><p> (4)可作為安全機(jī)制使用。即時(shí)對(duì)于沒(méi)有直接執(zhí)行存儲(chǔ)過(guò)程中語(yǔ)句的權(quán)限的用戶,也可授予他們執(zhí)行該存儲(chǔ)過(guò)程的權(quán)限。</p><p> 由上可知,存儲(chǔ)過(guò)程具有獨(dú)特的便利性,因此根據(jù)該系統(tǒng)的功能要求,設(shè)計(jì)了如下的存儲(chǔ)過(guò)程。</p><p> 3.5.1添加部門管理存儲(chǔ)過(guò)程</p><p> create
39、procedure [dbo].[insert_department]</p><p><b> (</b></p><p> @DeptNo int, --部門號(hào)</p><p> @DeptName char(50) --部門名</p><p><b> )</b></p>
40、<p><b> as</b></p><p> insert into dbo.department values(@DeptNo,@DeptName)</p><p> 創(chuàng)建成功,如圖3.5.1所示: 圖3.5.1 部門管理存儲(chǔ)過(guò)程</p><p> 3.5.2 刪除部門管理存儲(chǔ)過(guò)程</p>&l
41、t;p> create procedure [dbo].[delete_department]</p><p><b> (</b></p><p> @DeptNo int --部門號(hào)</p><p><b> )</b></p><p><b> as </b&g
42、t;</p><p> delete from dbo.department where DeptNo = @DeptNo</p><p> -- 添加教師信息表存儲(chǔ)過(guò)程</p><p> create procedure [dbo].[insert_teacher]</p><p> (@TeacherNumber int,--教師
43、編號(hào)</p><p> @TitleNumber char (10), --職稱編號(hào)</p><p> @TeacherName text, --姓名</p><p> @Sex char (10), --性別</p><p> @ContactNumber char (10), --聯(lián)系電話</p><
44、;p> @InFacultyNumber int--所屬院系編號(hào)</p><p><b> )</b></p><p><b> as</b></p><p> insert into dbo.teacher values</p><p><b> ( </b>
45、;</p><p> @TeacherNumber,@TitleNumber,@TeacherName,@Sex,@ContactNumber,@InFacultyNumber</p><p><b> )</b></p><p> 創(chuàng)建成功,如圖3.5.2所示:</p><p> 圖3.5.2添加教師信息表存儲(chǔ)
46、過(guò)程</p><p> --刪除教師信息表存儲(chǔ)過(guò)程</p><p> create procedure [dbo].[delete_teacher]</p><p><b> (</b></p><p> @TeacherNumber int --教師編號(hào)</p><p><b>
47、; ) </b></p><p><b> as </b></p><p> delete from teacher where TeacherNumber=@TeacherNumber</p><p> execute [dbo].[delete_teacher] @TeacherNumber=10</p>
48、<p> --科研項(xiàng)目存儲(chǔ)過(guò)程</p><p> create procedure [dbo].[insert_project]</p><p><b> ( </b></p><p> @ProjectNumber int ,--科研編號(hào)</p><p> @DeptNumber int,
49、 --系部號(hào)</p><p> @TeacherNumber int ,--教師編號(hào)</p><p> @TeacherName char (12), --教師姓名</p><p> @Report char (12),--是否申報(bào)</p><p> @approval char (12),--審批管理&l
50、t;/p><p> @Checking char (12), --驗(yàn)收標(biāo)致</p><p> @ProjectAmount int --科研數(shù)量</p><p><b> )</b></p><p><b> as</b></p><p> insert i
51、nto[dbo].[insert_project]values</p><p><b> ( </b></p><p> @ProjectNumber,@DeptNumber,@TeacherNumber,@TeacherName,@Report,@approval,@Checking,@ProjectAmount</p><p><
52、b> )</b></p><p> 創(chuàng)建成功,如圖3.5.3所示:</p><p> 圖3.5.3添加科研項(xiàng)目存儲(chǔ)過(guò)程</p><p><b> 3.6 視圖設(shè)計(jì)</b></p><p> 刪除科研項(xiàng)目存儲(chǔ)過(guò)程</p><p> create procedure [d
53、bo].[delete_project]</p><p><b> (</b></p><p> @TeacherNumber int --教師編號(hào) </p><p><b> )</b></p><p><b> as</b></p><p>
54、; delete from project where TeacherNumber=@TeacherNumber</p><p><b> go</b></p><p> execute [dbo].[delete_project] 9</p><p><b> 科研項(xiàng)目查詢</b></p><
55、p> create procedure [dbo].[check_project] </p><p><b> (</b></p><p> @TeacherNumber int </p><p><b> )</b></p><p><b> as</b>&l
56、t;/p><p><b> select</b></p><p> ProjectNumber,DeptNumber,TeacherNumber,TeacherName,Report,approval,Checking,ProjectAmount</p><p> from dbo.project</p><p>
57、where TeacherNumber=@TeacherNumber</p><p> 查詢成功如圖3.5.4所示:</p><p> 圖3.5.4查詢結(jié)果</p><p> 3.6.1創(chuàng)建教師表視圖</p><p> create view [view_teacher]</p><p><b>
58、 as </b></p><p> select TeacherName,ContactNumber from teacher</p><p> 創(chuàng)建成功,如圖3.6.1所示: 圖3.6.1 查詢職務(wù)視圖</p><p> 3.6.2查詢教師視圖</p><p> create view [
59、view_project]</p><p><b> as </b></p><p> select * from project</p><p> 創(chuàng)建成功,如圖3.6.2所示:</p><p> 圖3.6.2 查詢教師視圖</p><p><b> 四、設(shè)計(jì)結(jié)果與分析<
60、;/b></p><p> 1、創(chuàng)建觸發(fā)器,添加科研記錄時(shí),修改其驗(yàn)收狀態(tài)為“未驗(yàn)收”;</p><p> 2、創(chuàng)建觸發(fā)器,驗(yàn)收項(xiàng)目時(shí)自動(dòng)修改項(xiàng)目的驗(yàn)收標(biāo)志為“驗(yàn)收通過(guò)”;</p><p> 3--創(chuàng)建觸發(fā)器,禁止修改department表中“部門號(hào)”“部門名”等重要的字段。</p><p> --創(chuàng)建存儲(chǔ)過(guò)程插入一條信息到部門
61、管理</p><p> --創(chuàng)建存儲(chǔ)過(guò)程刪除一條信息到部門管理</p><p> --創(chuàng)建存儲(chǔ)過(guò)程插入一條信息到教師信息的管理 </p><p> --創(chuàng)建存儲(chǔ)過(guò)程插入一條信息到科研項(xiàng)目申報(bào)管理</p><p> (4)--創(chuàng)建存儲(chǔ)過(guò)程,統(tǒng)計(jì)各院系科研項(xiàng)目的申報(bào)和完成數(shù)量;</p><p> 1、創(chuàng)建教師聯(lián)系
62、電話視圖 </p><p><b> 2、創(chuàng)建科研表視圖</b></p><p><b> 結(jié) 論</b></p><p> 本次課程設(shè)計(jì)題目是:高??蒲泄芾硐到y(tǒng)</p><p> 該系統(tǒng)的功能貫穿了科研管理的全過(guò)程,使高校的科研管理工作能夠快速、方便、準(zhǔn)確、安全的得以實(shí)現(xiàn)。</p&
63、gt;<p> 經(jīng)過(guò)課時(shí)的學(xué)習(xí)努力,這個(gè)系統(tǒng)總算完成了。由于知識(shí)能力和時(shí)間的欠缺,我們小組初步實(shí)現(xiàn)了一些基本的管理系統(tǒng)功能,盡管它是一個(gè)半成品,系統(tǒng)還有許多不盡如人意的地方,存在很多不足,有待改善。但它是我們小組獨(dú)立完成的一個(gè)項(xiàng)目設(shè)計(jì)。</p><p> 通過(guò)這次課程設(shè)計(jì),我們了解了科研項(xiàng)目的大致流程,熟悉數(shù)據(jù)庫(kù)的使用,使我得到不少提高。在存儲(chǔ)器的開(kāi)發(fā)中,我認(rèn)為是最重要和最困難的部分,知識(shí)的欠缺
64、造成了對(duì)項(xiàng)目設(shè)計(jì)的修修補(bǔ)補(bǔ),在老師的幫助下,這些問(wèn)題基本得已解決,也衷心感謝老師的指導(dǎo)。</p><p><b> 參考文獻(xiàn)</b></p><p> [1]苗雪蘭,宋歌,劉瑞新等.數(shù)據(jù)庫(kù)系統(tǒng)原理及應(yīng)用教程[M].機(jī)械工業(yè)出版社.2010 </p><p> [2]馮建華,周主柱,宋歌,等.數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)與原理[M].清華大學(xué)出
65、版社.2006 </p><p> [3]薩師煊,王珊.數(shù)據(jù)庫(kù)系統(tǒng)概論(第五版) [M]. 北京:高等教育出版社.2006 </p><p> [4]李德奇.ASP.NET程序設(shè)計(jì)[M].人民郵電出版社 明日科技.2007 </p><p> [5]薩師煊,王珊.?dāng)?shù)據(jù)庫(kù)系統(tǒng)概論[M].北京:高等教育出
66、版社,2000</p><p><b> 附 錄</b></p><p> (這里給出建立數(shù)據(jù)庫(kù)和數(shù)據(jù)表的SQL代碼,如果有前臺(tái)設(shè)計(jì),適當(dāng)粘貼關(guān)鍵部分的設(shè)計(jì)代碼)</p><p> Create DataBase USRMS --University scientific research management system</p
67、><p><b> Use USRMS</b></p><p> create table department(--部門表</p><p> DeptNo int constraint pk_bmh primary key, --部門號(hào)</p><p> DeptName char(80) no
68、t null --部門名字</p><p><b> )</b></p><p> create table faculty( --系信息</p><p> DeptNumber int Not Null primary key,--系部號(hào)</p><p> DeptNo i
69、nt Not Null,--部門號(hào)</p><p> FacultyName char (20) Not Null--院系名稱</p><p><b> )</b></p><p> create table teacher( --教師信息表</p><p> TeacherNumber i
70、nt Not Null primary key, --教師編號(hào)</p><p> TitleNumber char (20) Not Null, --職稱編號(hào)</p><p> postNo char (20) Not Null, --職務(wù)編號(hào)</p><p> TeacherName text Not Nu
71、ll, --姓名 </p><p> Sex char (20) Not Null, --性別</p><p> ContactNumber char (20) Not Null, --聯(lián)系電話</p><p> InFacultyNumber int Not Null --所屬院系編號(hào)</p><p>
72、;<b> )</b></p><p> create table Employee( --職務(wù)表</p><p> postNo char (20) Not Null,--職務(wù)編號(hào)</p><p> post char (20) Not Null --職務(wù)</p><
73、p><b> )</b></p><p> create table Title( --職稱表</p><p> TitleNumber char(20) Not Null,--職稱編號(hào)</p><p> TitleName char (20) Not Null--職務(wù)名稱</
74、p><p><b> )</b></p><p> create table project( --科研計(jì)劃表</p><p> ProjectNumber int Not Null primary key,--科研編號(hào)</p><p> TeacherName char (12) Not Null,--
75、教師姓名</p><p> approval char (12) Not Null,--審批狀態(tài)</p><p> Checking char (12) Not Null,--驗(yàn)收狀態(tài)</p><p> add_time datatime Not Null, --申請(qǐng)時(shí)間,</p><p> 新起個(gè)名稱
76、 datatime Not Null, --審批時(shí)間,</p><p> 新起個(gè)名稱 datatime Not Null, --驗(yàn)收時(shí)間,</p><p><b> )</b></p><p> insert department values('01','Stanford Universi
77、ty ') </p><p> insert department values('02','Harvard University ') </p><p> insert department values('03','Yale University ') </p><p> insert
78、 department values('04','Columbia University') </p><p> insert faculty values('01','01','計(jì)算機(jī)') </p><p> insert facultyvalues('02','01'
79、;,'電氣工程') </p><p> insert facultyvalues('03','02','冶金')</p><p> insert facultyvalues('04','02','化學(xué)') </p><p> insert fac
80、ultyvalues('05','03','計(jì)算數(shù)學(xué)')</p><p> insert faculty values('06','03','應(yīng)用數(shù)學(xué)')</p><p> insert faculty values('07','04','物流管
81、理') </p><p> insert faculty values('08','04','財(cái)務(wù)管理') </p><p> insert teacher values('01','01','于立宏','男','001','01'
82、)</p><p> insert teacher values('02','02','張秀鳳','女','002','01') </p><p> insert teacher values('03','03','姜?dú)v歷','男
83、9;,'003','02')</p><p> insert teacher values('04','04','王曉慧','女','004','02') </p><p> insert teacher values('05','05
84、','張麗珍','女','005','03')</p><p> insert teacher values('06','06','樂(lè)其奇','女','006','03') </p><p> insert teache
85、r values('07','07','郭彬?yàn)I','男','007','04') </p><p> insert teacher values('08','08','關(guān)龍馬','男','008','04') </p
86、><p> insert Employee values('01','于立宏','國(guó)家級(jí)教練')</p><p> insert Employee values('02','張秀鳳','高級(jí)關(guān)務(wù)監(jiān)督 ') </p><p> insert Employee values
87、('03','姜?dú)v歷','高級(jí)工藝美術(shù)師') </p><p> insert Employee values('04','王曉慧','編審 ')</p><p> insert Employee values('05','張麗珍','一級(jí)律師'
88、;) </p><p> insert Employee values('06','樂(lè)其奇','譯審') </p><p> insert Employee values('07','郭彬?yàn)I','高級(jí)工程師') </p><p> insert Employee v
89、alues('08','關(guān)龍馬','研究員') </p><p> insert Title values('01','于立宏','教授') </p><p> insert Title values('02','張秀鳳','博士')<
90、;/p><p> insert Title values('03','姜?dú)v歷','研究生')</p><p> insert Title values('04','王曉慧','副教授') </p><p> insert Title values('05'
91、;,'張麗珍','助教') </p><p> insert Title values('06','樂(lè)其奇','教授') </p><p> insert Title values('07','郭彬?yàn)I','博士') </p><p>
92、 insert Title values('08','關(guān)龍馬','講師') </p><p> insert project values('01','01','01','于立宏','是','已審批','未驗(yàn)收','1') <
93、/p><p> insert project values('02','02','02','張秀鳳','是','未審批','驗(yàn)收','3') </p><p> insert project values('03','03',
94、9;03','姜?dú)v歷','是','已審批','未收','5') </p><p> insert project values('04','04','04','王曉慧','是','已審批','驗(yàn)收','7&
95、#39;) </p><p> insert project values('05','05','05','張麗珍','是','未審批','未驗(yàn)收','2')</p><p> insert project values('06','0
96、6','06','樂(lè)其奇','是','已審批','驗(yàn)收','4') </p><p> insert project values('07','07','07','郭彬?yàn)I','是','未審批','未驗(yàn)收
97、39;,'6') </p><p> insert project values('08','08','08','關(guān)龍馬','是','已審批','驗(yàn)收','8')</p><p> select * from Employee --員工職務(wù)表&
98、lt;/p><p> select * from Title --員工職稱</p><p> select * from project --科研計(jì)劃表</p><p> select * from teacher --教師信息表</p><p> select * from faculty -- 系部門</p>
99、<p> select * from department --部門表</p><p> --建立數(shù)據(jù)庫(kù)相關(guān)表之間的參照完整性約束。</p><p> Alter table faculty </p><p> Add constraint KY_facult_Dept</p><p> Foreign key (De
100、ptNo)references department (DeptNo) </p><p> Alter table teacher </p><p> Add constraint KY_teacher_Dept</p><p> Foreign key (InFacultyNumber) references department(DeptNo)
101、 </p><p> Alter table Employee</p><p> Add constraint KY_Employee_teacher </p><p> Foreign key (TeacherNumber)references teacher(TeacherNumber) </p><p> Alter
102、 table Title</p><p> Add constraint KY_Title_teacher </p><p> Foreign key (TeacherNumber)references teacher(TeacherNumber) </p><p> Alter table project </p><p>
103、 Add constraint KY_project_teacher</p><p> Foreign key (TeacherNumber)references teacher(TeacherNumber) </p><p> Alter table project </p><p> Add constraint KY_project_Dep
104、t</p><p> Foreign key (DeptNumber)references faculty(DeptNumber)</p><p> -- 添加部門存儲(chǔ)過(guò)程</p><p> create procedure [dbo].[insert_department]</p><p><b> (</b&g
105、t;</p><p> @DeptNo int, --部門號(hào)</p><p> @DeptName char(40) --部門名</p><p><b> )</b></p><p><b> as</b></p><p> insert into dbo.depa
106、rtment values(@DeptNo,@DeptName)</p><p><b> go</b></p><p> execute [dbo].[insert_department] 9,'Berklee College of Music'</p><p> select *from department wher
107、e DeptNo=9</p><p><b> -- 刪除部門</b></p><p> create procedure [dbo].[delete_department]</p><p><b> (</b></p><p> @DeptNo int --部門號(hào)</p>&
108、lt;p><b> )</b></p><p><b> as </b></p><p> delete from dbo.department where DeptNo = @DeptNo</p><p><b> go</b></p><p> execut
109、e [dbo].[delete_department] 9</p><p> select *from department where DeptNo=9</p><p> -- 添加教師信息表存儲(chǔ)過(guò)程</p><p> create procedure [dbo].[insert_teacher]</p><p> (@Teache
110、rNumber int,--教師編號(hào)</p><p> @TitleNumber char (10), --職稱編號(hào)</p><p> @TeacherName text, --姓名</p><p> @Sex char (10), --性別</p><p> @ContactNumber char (10), --聯(lián)系電
111、話</p><p> @InFacultyNumber int--所屬院系編號(hào)</p><p><b> )</b></p><p><b> as</b></p><p> insert into dbo.teacher values</p><p><b&
112、gt; ( </b></p><p> @TeacherNumber,@TitleNumber,@TeacherName,@Sex,@ContactNumber,@InFacultyNumber</p><p><b> )</b></p><p><b> go</b></p><
113、p> execute[dbo].[insert_teacher] 14,14,'俄洛伊','女','1811111111',4</p><p> execute[dbo].[insert_teacher] 10,10,'孫悟空','女', '1517700676',2</p><p>
114、 execute[dbo].[insert_teacher] 11,11,'杜啟燕','女','1517766666',1</p><p> execute[dbo].[insert_teacher] 9,9,'梁','女','1211111182',1</p><p> execut
115、e[dbo].[insert_teacher] 100,109,'潘','男','1357896211',4</p><p> --刪除教師信息表存儲(chǔ)過(guò)程</p><p> create procedure [dbo].[delete_teacher]</p><p><b> (</b>&
116、lt;/p><p> @TeacherNumber int --教師編號(hào)</p><p><b> ) </b></p><p><b> as </b></p><p> delete from teacher where TeacherNumber=@TeacherNumber</p
117、><p> select * from teacher where TeacherNumber=14</p><p> execute [dbo].[delete_teacher] 100</p><p> --科研項(xiàng)目存儲(chǔ)過(guò)程</p><p> create procedure [dbo].[insert_project]</p
118、><p><b> ( </b></p><p> @ProjectNumber int ,--科研編號(hào)</p><p> @DeptNumber int, --系部號(hào)</p><p> @TeacherNumber int ,--教師編號(hào)</p><p> @TeacherName
119、 char (12), --教師姓名</p><p> @Report char (12),--是否申報(bào)</p><p> @approval char (12),--審批管理</p><p> @Checking char (12), --驗(yàn)收標(biāo)致</p><p> @ProjectAmount
120、int --科研數(shù)量</p><p><b> )</b></p><p><b> as</b></p><p> insert into [dbo].[insert_project] values</p><p><b> (</b></p><
121、;p> @ProjectNumber,@DeptNumber,@TeacherNumber,@TeacherName,@Report,@approval,@Checking,@ProjectAmount</p><p><b> )</b></p><p><b> go</b></p><p> execu
122、te [dbo].[insert_project] 12,4,100,'潘','是','已審批','未驗(yàn)收',5</p><p> select * from project </p><p> --刪除科研項(xiàng)目存儲(chǔ)過(guò)程</p><p> create procedure [dbo].[dele
123、te_project]</p><p><b> (</b></p><p> @TeacherNumber int --教師編號(hào) </p><p><b> )</b></p><p><b> as</b></p><p> delete
124、 from project where TeacherNumber=@TeacherNumber</p><p><b> go</b></p><p> execute [dbo].[delete_project] 9</p><p><b> --科研項(xiàng)目查詢</b></p><p>
125、create procedure [dbo].[check_project] </p><p><b> (</b></p><p> @TeacherNumber int </p><p><b> )</b></p><p><b> as</b></p>
126、;<p><b> select </b></p><p> ProjectNumber,DeptNumber,TeacherNumber,TeacherName,Report,approval,Checking,ProjectAmount from dbo.project</p><p> where TeacherNumber=@Teache
127、rNumber</p><p><b> --調(diào)用</b></p><p> execute [dbo].[check_project] 5</p><p> --創(chuàng)建存儲(chǔ)過(guò)程統(tǒng)計(jì)教師系科研項(xiàng)目的完成數(shù)量</p><p> create procedure [dbo].[up_project]( @DeptNu
128、mber int)</p><p><b> AS</b></p><p><b> begin</b></p><p> select project.DeptNumber,Report,ProjectAmount from project</p><p> Where project.
129、DeptNumber=@DeptNumber and Report='是'</p><p><b> end</b></p><p> execute [dbo].[up_project] 4</p><p> --創(chuàng)建觸發(fā)器,添加科研記錄時(shí)候,修改狀態(tài)為“未驗(yàn)收”</p><p> create
130、 trigger [dbo].[tgr_project_insert]</p><p> on project </p><p> for insert --插入觸發(fā)</p><p><b> as</b></p><p> update project</p><p> set Che
131、cking='未驗(yàn)收'</p><p><b> go</b></p><p> insert into project values('10','2','10','孫悟空','是','未審批','已驗(yàn)收','10')&l
132、t;/p><p> select * from project where TeacherName='孫悟空'</p><p> --創(chuàng)建觸發(fā)器,驗(yàn)收項(xiàng)目時(shí)自動(dòng)修改項(xiàng)目的驗(yàn)收標(biāo)志為'驗(yàn)證通過(guò)'</p><p> create trigger [dbo].[tgr_project_insert_mark]</p>&
133、lt;p> on project </p><p> for update</p><p><b> as</b></p><p><b> begin</b></p><p> if update(Checking)</p><p> update pro
134、ject set Checking='驗(yàn)收通過(guò)'</p><p><b> end</b></p><p> insert into project values(11,1,11,'杜啟燕','否','已審批','未驗(yàn)收','2')</p><p&g
135、t; select * from project where TeacherNumber=11 or TeacherNumber=10</p><p> --高校科研管理表department表創(chuàng)建一觸發(fā)器</p><p> create trigger [dbo].[update_department]</p><p> on department<
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 高校教材管理系統(tǒng)-課程設(shè)計(jì)報(bào)告
- c語(yǔ)言課程設(shè)計(jì)---某高校圖書管理系統(tǒng)
- 某中學(xué)的排課管理系統(tǒng)-課程設(shè)計(jì)報(bào)告
- c++課程設(shè)計(jì)報(bào)告--高校人員管理系統(tǒng)
- 高校工資管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 某院系黨員信息管理系統(tǒng)-課程設(shè)計(jì)報(bào)告
- vf課程設(shè)計(jì)報(bào)告---某企業(yè)倉(cāng)庫(kù)庫(kù)存管理系統(tǒng)
- c++課程設(shè)計(jì)--某高校信息管理
- 高校學(xué)生就業(yè)管理系統(tǒng)-課程設(shè)計(jì)報(bào)告
- 高校教師信息管理系統(tǒng)-課程設(shè)計(jì)報(bào)告
- vb課程設(shè)計(jì)報(bào)告-高校畢業(yè)生管理系統(tǒng)
- vb課程設(shè)計(jì)報(bào)告-高校畢業(yè)生管理系統(tǒng)
- 高校圖書館管理系統(tǒng)管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 高校人事管理系統(tǒng)課程設(shè)計(jì)
- vf課程設(shè)計(jì)---高校成績(jī)管理系統(tǒng)
- 某商店進(jìn)銷存管理系統(tǒng)-課程設(shè)計(jì)報(bào)告
- 某客運(yùn)公司的運(yùn)輸管理系統(tǒng)-課程設(shè)計(jì)報(bào)告
- 某煤氣公司送氣管理系統(tǒng)-課程設(shè)計(jì)報(bào)告
- c++課程設(shè)計(jì)報(bào)告---高校工資管理系統(tǒng)
- 高校人員信息管理系統(tǒng) 課程設(shè)計(jì)報(bào)告書
評(píng)論
0/150
提交評(píng)論