某高校科研管理系統(tǒng)-課程設計報告_第1頁
已閱讀1頁,還剩27頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p>  《數(shù)據(jù)庫系統(tǒng)概論課程名稱》</p><p><b>  課程設計報告</b></p><p><b>  計算機學院</b></p><p>  2017年12月8日</p><p><b>  目錄</b></p><p>  一

2、、 設計內容及要求1</p><p>  1.1系統(tǒng)功能概述1</p><p><b>  二、 概要設計2</b></p><p>  2.1系統(tǒng)可行性分析2</p><p>  2.2系統(tǒng)需求分析3</p><p>  2.2系統(tǒng)功能結構圖4</p><p>

3、;  2.3開發(fā)環(huán)境及工具4</p><p>  三、設計過程或程序代碼5</p><p>  3.0系統(tǒng)設計思想5</p><p>  3.1數(shù)據(jù)庫需求分析5</p><p>  3.2數(shù)據(jù)庫概念結構設計5</p><p><b>  3.3數(shù)據(jù)字典8</b></p>

4、<p>  3.4觸發(fā)器設計9</p><p>  3.5 存儲過程設計10</p><p>  3.6 視圖設計12</p><p>  四、設計結果與分析14</p><p><b>  結 論18</b></p><p><b>  參考文獻19</b

5、></p><p><b>  附 錄20</b></p><p>  一、 設計內容及要求</p><p><b>  1.1系統(tǒng)功能概述</b></p><p>  經(jīng)過實際考察和分析,高等院校學籍管理系統(tǒng)包括八個模塊,相應能實現(xiàn)以下主要功能: </p><

6、;p>  科研人員信息管理:包括科研人員信息數(shù)據(jù)的錄入、修改與刪除等功能。</p><p>  科研項目信息管理:包括科研項目信息的錄入、修改與刪除等功能。 </p><p>  科研論文信息管理:包括科研人員錄入的論文信息的錄入、修改與刪除等功能。 </p><p>  科研著作信息管理:包括科研人員錄入的著作信息的錄入、修改與刪除等功能

7、。 </p><p>  獲獎信息管理:包括科研人員獲獎信息的錄入、修改與刪除等功能。 </p><p>  年度科研分的計算:根據(jù)科研人員獲獎給予科研分,并對其進行統(tǒng)計。 </p><p>  系統(tǒng)管理員管理:包括系統(tǒng)用戶數(shù)據(jù)的錄入、修改與刪除等功能。 </p><p>  數(shù)據(jù)查詢:包括科研人員信息

8、的查詢和科研人員個人論文和著作的查詢以及科研人員獲獎情況的查詢等功能。</p><p>  1.2系統(tǒng)的開發(fā)環(huán)境</p><p>  1.2.1 開發(fā)環(huán)境的選擇</p><p>  開發(fā)與運行的環(huán)境的選擇會影響到數(shù)據(jù)庫設計,本系統(tǒng)開發(fā)與運行環(huán)境如下: </p><p>  開發(fā)環(huán)境:Windows10 企業(yè)版 ? 

9、;</p><p>  數(shù)據(jù)庫管理系統(tǒng):SQL Server 2014</p><p>  本系統(tǒng)在Windows10企業(yè)版開發(fā)環(huán)境下,并使用SQL Server 2014作為數(shù)據(jù)庫管理系統(tǒng),來實現(xiàn)高??蒲泄芾硐到y(tǒng)的各個模塊和它們的功能,形成一個令多數(shù)學校滿意的科研管理系統(tǒng)。</p><p>  1.2.2 SQL&

10、#160;server 2014簡介 </p><p>  Microsoft SQL Server 2014已經(jīng)內置最新的安全、功能更新。微軟將在愚人節(jié),即Build2014開發(fā)者大會期間開放SQL Server 2014資源下載服務。        Microsoft SQL Server 2014為市場帶來了部署到核心數(shù)據(jù)庫中的新內存功能,包括內

11、存 OLTP,它是對市場上大多數(shù)綜合內存數(shù)據(jù)庫解決方案的現(xiàn)有內存數(shù)據(jù)倉庫和 BI 功能的補充。        SQL Server 2014 還提供新的云功能,以簡化 SQL 數(shù)據(jù)庫對云技術的采用并幫助您開創(chuàng)新的混合方案。</p><p><b>  二、 概要設計</b></p><p>  2.1系統(tǒng)可行性分析</p

12、><p>  2.1.1 目標可行性</p><p>  隨著學校的規(guī)模不斷擴大,學生數(shù)量急劇增加,有關學生的各種信息量也成倍增長,因此對教育行業(yè)的多元信息進行有效的管理工作,一套現(xiàn)代化、自動化、智能化、人性化的學生成績管理系統(tǒng)可減輕了學院教務人員管理的工作量,縮小開支,提高工作效率和準確率,使其變得更具有條理性,科學性。</p><p>  由于本系統(tǒng)管理的對象簡單,

13、且每個數(shù)據(jù)內容之間都具有較強的關聯(lián)性,涉及過程并不是很復雜。因此比較適合于采用數(shù)據(jù)庫管理。</p><p>  2.1.2 技術可行性</p><p>  本系統(tǒng)采用目前被廣泛使用的C#開發(fā)技術、SQL Server 2008數(shù)據(jù)庫技術和Windows Forms窗體進行開發(fā)設計,是一個客戶機/服務器(C/S)模式。首先,c#是微軟為.NET量身定做的開發(fā)語言集合了C/C++和VB的雙重優(yōu)

14、點,具有簡易型、靈活性、移植性強等特點,同時使用Visual Studio 2008作為開發(fā)平臺,對于開發(fā)中小系統(tǒng)來說,這種開發(fā)環(huán)境是完全沒有問題的。其次,本系統(tǒng)采用SQL Server 2008數(shù)據(jù)庫。到目前為止,SQL數(shù)據(jù)庫仍然是使用最廣泛的一種數(shù)據(jù)庫語言,因此本系統(tǒng)采用SQL Server 2008,在系統(tǒng)安全性、可用性和高穩(wěn)定性上又有了很大的提升。再次,本系統(tǒng)的操作環(huán)境采用Windows操作系統(tǒng),可以為本系統(tǒng)的開發(fā)提供良好的穩(wěn)定

15、性。最后,考慮到三者兼容的問題,由于三者都屬于微軟公司的產(chǎn)品,所以兼容性上不存在問題。硬件方面,采用標準的服務器硬件配置,能滿足本系統(tǒng)的要求。綜上所述,本系統(tǒng)的技術可行性不存在問題。 </p><p>  2.1.3經(jīng)濟可行性</p><p>  完成本系統(tǒng)需要硬件和軟件兩方面的支持。硬件方面需要開發(fā)服務器一臺,個人電腦在此可作為服務器使用;軟件方面,由于本系統(tǒng)屬于小型管理系統(tǒng),利用Vi

16、sual Studio 2008和SQL Server 2008數(shù)據(jù)庫開發(fā)工具即可實現(xiàn)。開發(fā)時間短,經(jīng)濟成本低。</p><p><b>  2.2系統(tǒng)需求分析</b></p><p>  高??蒲泄芾硭O計的事務非常繁雜,涉及到??蒲刑?、各個院系的科研管理以及個人對科研信息的查詢統(tǒng)計等。所設計的系統(tǒng)既要有利于科研處的監(jiān)督管理又要有利于各個系及教師的分工協(xié)作。系統(tǒng)功能

17、主要包括??蒲刑幙蒲泄芾?、院系(或部門)科研管理、個人科研信息查詢、校級科研項目整體信息管理??梢詣澐譃榭蒲行畔⒕S護、科研信息查詢與統(tǒng)計、科研信息報表、科研信息分析、校級課題申報、審批、結題、其它處理等操作;其中科研信息應細分為學術論文、科研項目、科研成果、科研獎勵等信息。 </p><p>  由于本系統(tǒng)是直接面向網(wǎng)上辦公的,必須適應所服務環(huán)境的各類操作人員,主要包括學??蒲刑?、各院系(或部門)、普通

18、教師個人(或其他瀏覽者)。 </p><p> ?、倨胀ń處焸€人(或其他瀏覽者) </p><p>  普通教師個人(或其他瀏覽者)只能按姓名來瀏覽個人的科研信息、進行統(tǒng)計打印,個人的科研信息(論文、著作、項目成果等)必須提交本部門審核入錄。 </p><p> ?、?#160;各院系(或部門) </p><

19、;p>  各院系(或部門)主要職責是對本部門員工的論文、科研項目、科研成果、獎勵等信息進行審核后輸入到本系統(tǒng)數(shù)據(jù)庫中,查詢本部門在某時間內的科研信息、統(tǒng)計科研情況、打印相關資料等,同時對本部門的錯誤錄入信息進行修改和維護。 </p><p><b>  ③科研處 </b></p><p>  主要管理本校的員工信息、論文、各級各類科研項目和成

20、果、科研獎勵等常規(guī)工作,同時,管理校級課題的申報、審批、結題等管理,同時,監(jiān)控系統(tǒng)運行和各部門的情況。</p><p>  2.2系統(tǒng)功能結構圖</p><p>  圖2.2系統(tǒng)功能結構圖</p><p>  2.3開發(fā)環(huán)境及工具</p><p>  本系統(tǒng)開發(fā)時所使用的相關開發(fā)環(huán)境和工具如下:</p><p>  操

21、作系統(tǒng):Microsoft Windows10 企業(yè)版</p><p>  數(shù)據(jù)庫:Microsoft SQL Server 2014</p><p>  繪圖軟件:Microsoft Visio 2005</p><p>  三、設計過程或程序代碼</p><p><b>  3.0系統(tǒng)設計思想</b></p&g

22、t;<p>  隨著網(wǎng)絡的日益普遍化,網(wǎng)絡的安全將顯得非常重要,從數(shù)據(jù)庫級、服務器級和應用程序級綜合考慮,在科研管理系統(tǒng)中要根據(jù)不同用戶,設置不同的權限、不同的初始化菜單。在本系統(tǒng)中,數(shù)據(jù)庫的安全主要通過數(shù)據(jù)庫的存取控制機制實現(xiàn)的。首先定義各類管理人員的操作權限即角色,其次定義數(shù)據(jù)庫登錄,最后依據(jù)用戶權限表將登錄分配為相應的角色。</p><p>  3.1數(shù)據(jù)庫需求分析</p>&l

23、t;p>  經(jīng)過實際考察和分析,高等院校學籍管理系統(tǒng)包括八個模塊,相應能實現(xiàn)以下主要功能: </p><p>  科研人員信息管理:包括科研人員信息數(shù)據(jù)的錄入、修改與刪除等功能。</p><p>  科研項目信息管理:包括科研項目信息的錄入、修改與刪除等功能。 </p><p>  科研論文信息管理:包括科研人員錄入的論文信息的錄入、修改與

24、刪除等功能。 </p><p>  科研著作信息管理:包括科研人員錄入的著作信息的錄入、修改與刪除等功能。 </p><p>  獲獎信息管理:包括科研人員獲獎信息的錄入、修改與刪除等功能。 </p><p>  年度科研分的計算:根據(jù)科研人員獲獎給予科研分,并對其進行統(tǒng)計。 </p><p>  系統(tǒng)

25、管理員管理:包括系統(tǒng)用戶數(shù)據(jù)的錄入、修改與刪除等功能。 </p><p>  數(shù)據(jù)查詢:包括科研人員信息的查詢和科研人員個人論文和著作的查詢以及科研人員獲獎情況的查詢等功能。</p><p>  3.2數(shù)據(jù)庫概念結構設計</p><p>  概念結構設計階段是整個數(shù)據(jù)庫設計的關鍵,它通過對用戶需求進行綜合、歸納與抽象,形成一個獨立于具體的概念模型。根據(jù)數(shù)據(jù)

26、庫需求分析的結果,就可以確認程序中所包含的實體及實體間的關系,作為數(shù)據(jù)庫邏輯結構設計的基礎與指導。根據(jù)本系統(tǒng)的需要,可以歸納出以下實體:部門、職務、職稱、系部和科研項目。各實體間的E-R圖如下所示。</p><p>  部門E-R圖如圖3.1(1)所示:</p><p>  部門E-R圖3.1(1)</p><p>  主要實體E-R圖如圖3.2(2)所示</

27、p><p>  主要實體E-R圖如圖3.2(2)</p><p>  職務E-R圖如圖3.3(3)所示:</p><p>  職務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ā)器設計</b></p><p>  3.4.1科研計劃表添加科研記錄時,修改其驗收狀態(tài)為“未驗收”</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='未驗收'</p><p>  創(chuàng)建成功,如圖3.4.1所示: 圖3.4.1 科研計劃表修改觸發(fā)器<

31、/p><p>  3.4.2科研計劃表驗收項目時自動修改項目的驗收標志為“驗收通過”</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='驗收通過'</p><p><b>  end</b></p&g

33、t;<p>  創(chuàng)建成功,如圖3.4.2所示: 圖3.4.2 科研計劃表修改觸發(fā)器</p><p>  3.4.3部門表禁止修改部門表中“部門名”“部門號”等重要的字段</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科研計劃表修改觸發(fā)器</p><p>  3.5 存儲過程設計</p><p>  存儲過程是SQL語句和可選控制流語句的預編譯集合,以一個名稱存儲并作為一個單元處理。存儲過程存儲在數(shù)據(jù)庫內,可由應用程序通過一個調用執(zhí)行。它有如下優(yōu)點:</p&

37、gt;<p> ?。?)允許模塊化程序設計。存儲過程一旦創(chuàng)建,以后即可在程序中調用任意多次</p><p> ?。?)可以減少網(wǎng)絡通信流量,一個需要數(shù)百行Transact-SQL代碼的操作可以通過一條執(zhí)行過程代碼的語句執(zhí)行,而不需要在網(wǎng)絡中發(fā)送數(shù)百行代碼。</p><p> ?。?)允許更快執(zhí)行。存儲過程只在第一次執(zhí)行時需要編譯且被存儲在存儲器中,其他次執(zhí)行不必由數(shù)據(jù)引擎再編

38、譯,提高了執(zhí)行速度。</p><p> ?。?)可作為安全機制使用。即時對于沒有直接執(zhí)行存儲過程中語句的權限的用戶,也可授予他們執(zhí)行該存儲過程的權限。</p><p>  由上可知,存儲過程具有獨特的便利性,因此根據(jù)該系統(tǒng)的功能要求,設計了如下的存儲過程。</p><p>  3.5.1添加部門管理存儲過程</p><p>  create

39、procedure [dbo].[insert_department]</p><p><b>  (</b></p><p>  @DeptNo int, --部門號</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 部門管理存儲過程</p><p>  3.5.2 刪除部門管理存儲過程</p>&l

41、t;p>  create procedure [dbo].[delete_department]</p><p><b>  (</b></p><p>  @DeptNo int --部門號</p><p><b>  )</b></p><p><b>  as </b&g

42、t;</p><p>  delete from dbo.department where DeptNo = @DeptNo</p><p>  -- 添加教師信息表存儲過程</p><p>  create procedure [dbo].[insert_teacher]</p><p>  (@TeacherNumber int,--教師

43、編號</p><p>  @TitleNumber char (10), --職稱編號</p><p>  @TeacherName text, --姓名</p><p>  @Sex char (10), --性別</p><p>  @ContactNumber char (10), --聯(lián)系電話</p><

44、;p>  @InFacultyNumber int--所屬院系編號</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添加教師信息表存儲

46、過程</p><p>  --刪除教師信息表存儲過程</p><p>  create procedure [dbo].[delete_teacher]</p><p><b>  (</b></p><p>  @TeacherNumber int --教師編號</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>  --科研項目存儲過程</p><p>  create procedure [dbo].[insert_project]</p><p><b>  ( </b></p><p>  @ProjectNumber int ,--科研編號</p><p>  @DeptNumber int,

49、 --系部號</p><p>  @TeacherNumber int ,--教師編號</p><p>  @TeacherName char (12), --教師姓名</p><p>  @Report char (12),--是否申報</p><p>  @approval char (12),--審批管理&l

50、t;/p><p>  @Checking char (12), --驗收標致</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添加科研項目存儲過程</p><p><b>  3.6 視圖設計</b></p><p>  刪除科研項目存儲過程</p><p>  create procedure [d

53、bo].[delete_project]</p><p><b>  (</b></p><p>  @TeacherNumber int --教師編號 </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>  科研項目查詢</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查詢結果</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 查詢職務視圖</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>  四、設計結果與分析<

60、;/b></p><p>  1、創(chuàng)建觸發(fā)器,添加科研記錄時,修改其驗收狀態(tài)為“未驗收”;</p><p>  2、創(chuàng)建觸發(fā)器,驗收項目時自動修改項目的驗收標志為“驗收通過”;</p><p>  3--創(chuàng)建觸發(fā)器,禁止修改department表中“部門號”“部門名”等重要的字段。</p><p>  --創(chuàng)建存儲過程插入一條信息到部門

61、管理</p><p>  --創(chuàng)建存儲過程刪除一條信息到部門管理</p><p>  --創(chuàng)建存儲過程插入一條信息到教師信息的管理 </p><p>  --創(chuàng)建存儲過程插入一條信息到科研項目申報管理</p><p>  (4)--創(chuàng)建存儲過程,統(tǒng)計各院系科研項目的申報和完成數(shù)量;</p><p>  1、創(chuàng)建教師聯(lián)系

62、電話視圖 </p><p><b>  2、創(chuàng)建科研表視圖</b></p><p><b>  結 論</b></p><p>  本次課程設計題目是:高校科研管理系統(tǒng)</p><p>  該系統(tǒng)的功能貫穿了科研管理的全過程,使高校的科研管理工作能夠快速、方便、準確、安全的得以實現(xiàn)。</p&

63、gt;<p>  經(jīng)過課時的學習努力,這個系統(tǒng)總算完成了。由于知識能力和時間的欠缺,我們小組初步實現(xiàn)了一些基本的管理系統(tǒng)功能,盡管它是一個半成品,系統(tǒng)還有許多不盡如人意的地方,存在很多不足,有待改善。但它是我們小組獨立完成的一個項目設計。</p><p>  通過這次課程設計,我們了解了科研項目的大致流程,熟悉數(shù)據(jù)庫的使用,使我得到不少提高。在存儲器的開發(fā)中,我認為是最重要和最困難的部分,知識的欠缺

64、造成了對項目設計的修修補補,在老師的幫助下,這些問題基本得已解決,也衷心感謝老師的指導。</p><p><b>  參考文獻</b></p><p>  [1]苗雪蘭,宋歌,劉瑞新等.數(shù)據(jù)庫系統(tǒng)原理及應用教程[M].機械工業(yè)出版社.2010 </p><p>  [2]馮建華,周主柱,宋歌,等.數(shù)據(jù)庫系統(tǒng)設計與原理[M].清華大學出

65、版社.2006 </p><p>  [3]薩師煊,王珊.數(shù)據(jù)庫系統(tǒng)概論(第五版) [M]. 北京:高等教育出版社.2006 </p><p>  [4]李德奇.ASP.NET程序設計[M].人民郵電出版社 明日科技.2007 </p><p>  [5]薩師煊,王珊.數(shù)據(jù)庫系統(tǒng)概論[M].北京:高等教育出

66、版社,2000</p><p><b>  附 錄</b></p><p>  (這里給出建立數(shù)據(jù)庫和數(shù)據(jù)表的SQL代碼,如果有前臺設計,適當粘貼關鍵部分的設計代碼)</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, --部門號</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,--系部號</p><p>  DeptNo i

69、nt Not Null,--部門號</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, --教師編號</p><p>  TitleNumber char (20) Not Null, --職稱編號</p><p>  postNo char (20) Not Null, --職務編號</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 --所屬院系編號</p><p>

72、;<b>  )</b></p><p>  create table Employee( --職務表</p><p>  postNo char (20) Not Null,--職務編號</p><p>  post char (20) Not Null --職務</p><

73、p><b>  )</b></p><p>  create table Title( --職稱表</p><p>  TitleNumber char(20) Not Null,--職稱編號</p><p>  TitleName char (20) Not Null--職務名稱</

74、p><p><b>  )</b></p><p>  create table project( --科研計劃表</p><p>  ProjectNumber int Not Null primary key,--科研編號</p><p>  TeacherName char (12) Not Null,--

75、教師姓名</p><p>  approval char (12) Not Null,--審批狀態(tài)</p><p>  Checking char (12) Not Null,--驗收狀態(tài)</p><p>  add_time datatime Not Null, --申請時間,</p><p>  新起個名稱

76、 datatime Not Null, --審批時間,</p><p>  新起個名稱 datatime Not Null, --驗收時間,</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','計算機') </p><p>  insert facultyvalues('02','01'

79、;,'電氣工程') </p><p>  insert facultyvalues('03','02','冶金')</p><p>  insert facultyvalues('04','02','化學') </p><p>  insert fac

80、ultyvalues('05','03','計算數(shù)學')</p><p>  insert faculty values('06','03','應用數(shù)學')</p><p>  insert faculty values('07','04','物流管

81、理') </p><p>  insert faculty values('08','04','財務管理') </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','姜歷歷','男

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','樂其奇','女','006','03') </p><p>  insert teache

85、r values('07','07','郭彬濱','男','007','04') </p><p>  insert teacher values('08','08','關龍馬','男','008','04') </p

86、><p>  insert Employee values('01','于立宏','國家級教練')</p><p>  insert Employee values('02','張秀鳳','高級關務監(jiān)督 ') </p><p>  insert Employee values

87、('03','姜歷歷','高級工藝美術師') </p><p>  insert Employee values('04','王曉慧','編審 ')</p><p>  insert Employee values('05','張麗珍','一級律師'

88、;) </p><p>  insert Employee values('06','樂其奇','譯審') </p><p>  insert Employee values('07','郭彬濱','高級工程師') </p><p>  insert Employee v

89、alues('08','關龍馬','研究員') </p><p>  insert Title values('01','于立宏','教授') </p><p>  insert Title values('02','張秀鳳','博士')<

90、;/p><p>  insert Title values('03','姜歷歷','研究生')</p><p>  insert Title values('04','王曉慧','副教授') </p><p>  insert Title values('05'

91、;,'張麗珍','助教') </p><p>  insert Title values('06','樂其奇','教授') </p><p>  insert Title values('07','郭彬濱','博士') </p><p> 

92、 insert Title values('08','關龍馬','講師') </p><p>  insert project values('01','01','01','于立宏','是','已審批','未驗收','1') <

93、/p><p>  insert project values('02','02','02','張秀鳳','是','未審批','驗收','3') </p><p>  insert project values('03','03',

94、9;03','姜歷歷','是','已審批','未收','5') </p><p>  insert project values('04','04','04','王曉慧','是','已審批','驗收','7&

95、#39;) </p><p>  insert project values('05','05','05','張麗珍','是','未審批','未驗收','2')</p><p>  insert project values('06','0

96、6','06','樂其奇','是','已審批','驗收','4') </p><p>  insert project values('07','07','07','郭彬濱','是','未審批','未驗收&#

97、39;,'6') </p><p>  insert project values('08','08','08','關龍馬','是','已審批','驗收','8')</p><p>  select * from Employee --員工職務表&

98、lt;/p><p>  select * from Title --員工職稱</p><p>  select * from project --科研計劃表</p><p>  select * from teacher --教師信息表</p><p>  select * from faculty -- 系部門</p>

99、<p>  select * from department --部門表</p><p>  --建立數(shù)據(jù)庫相關表之間的參照完整性約束。</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>  -- 添加部門存儲過程</p><p>  create procedure [dbo].[insert_department]</p><p><b>  (</b&g

105、t;</p><p>  @DeptNo int, --部門號</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 --部門號</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>  -- 添加教師信息表存儲過程</p><p>  create procedure [dbo].[insert_teacher]</p><p>  (@Teache

110、rNumber int,--教師編號</p><p>  @TitleNumber char (10), --職稱編號</p><p>  @TeacherName text, --姓名</p><p>  @Sex char (10), --性別</p><p>  @ContactNumber char (10), --聯(lián)系電

111、話</p><p>  @InFacultyNumber int--所屬院系編號</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>  --刪除教師信息表存儲過程</p><p>  create procedure [dbo].[delete_teacher]</p><p><b>  (</b>&

116、lt;/p><p>  @TeacherNumber int --教師編號</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>  --科研項目存儲過程</p><p>  create procedure [dbo].[insert_project]</p

118、><p><b>  ( </b></p><p>  @ProjectNumber int ,--科研編號</p><p>  @DeptNumber int, --系部號</p><p>  @TeacherNumber int ,--教師編號</p><p>  @TeacherName

119、 char (12), --教師姓名</p><p>  @Report char (12),--是否申報</p><p>  @approval char (12),--審批管理</p><p>  @Checking char (12), --驗收標致</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,'潘','是','已審批','未驗收',5</p><p>  select * from project </p><p>  --刪除科研項目存儲過程</p><p>  create procedure [dbo].[dele

123、te_project]</p><p><b>  (</b></p><p>  @TeacherNumber int --教師編號 </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>  --科研項目查詢</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>  --調用</b></p><p>  execute [dbo].[check_project] 5</p><p>  --創(chuàng)建存儲過程統(tǒ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ā)器,添加科研記錄時候,修改狀態(tài)為“未驗收”</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='未驗收'</p><p><b>  go</b></p><p>  insert into project values('10','2','10','孫悟空','是','未審批','已驗收','10')&l

132、t;/p><p>  select * from project where TeacherName='孫悟空'</p><p>  --創(chuàng)建觸發(fā)器,驗收項目時自動修改項目的驗收標志為'驗證通過'</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='驗收通過'</p><p><b>  end</b></p><p>  insert into project values(11,1,11,'杜啟燕','否','已審批','未驗收','2')</p><p&g

135、t;  select * from project where TeacherNumber=11 or TeacherNumber=10</p><p>  --高??蒲泄芾肀韉epartment表創(chuàng)建一觸發(fā)器</p><p>  create trigger [dbo].[update_department]</p><p>  on department<

溫馨提示

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

評論

0/150

提交評論