數(shù)據(jù)庫課程設計—教務管理系統(tǒng)_第1頁
已閱讀1頁,還剩15頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  目 錄</b></p><p><b>  1 可行性研究3</b></p><p><b>  2 需求分析3</b></p><p>  2.1 任務概述3</p><p>  2.2 運行環(huán)境4</p><p&g

2、t;  2.3 系統(tǒng)數(shù)據(jù)流圖4</p><p>  2.4 一致性需求4</p><p>  2.5 完整性需求5</p><p><b>  3 概要設計5</b></p><p><b>  3.1接口設計5</b></p><p>  3.1.1 外部接口5

3、</p><p>  3.1.2 內部接口5</p><p>  3.2 E—R圖5</p><p>  3.2.1 局部E-R圖5</p><p>  3.2.1 全局E-R圖7</p><p><b>  4 邏輯設計8</b></p><p>  4.1 關

4、系模式轉換8</p><p>  4.2 各實體及其屬性表格8</p><p>  5 數(shù)據(jù)庫實現(xiàn)10</p><p>  5.1 創(chuàng)建數(shù)據(jù)庫10</p><p>  5.2 創(chuàng)建數(shù)據(jù)表10</p><p>  5.3 創(chuàng)建索引11</p><p>  5.4 創(chuàng)建視圖11<

5、/p><p>  5.4.1 定義視圖11</p><p>  5.4.2 查詢視圖12</p><p>  5.5 創(chuàng)建存儲過程與觸發(fā)器12</p><p>  5.5.1 存儲過程12</p><p>  5.5.2觸發(fā)器13</p><p><b>  6 系統(tǒng)測試13&

6、lt;/b></p><p>  6.1 數(shù)據(jù)查詢13</p><p>  6.2 數(shù)據(jù)更新14</p><p>  7 課程設計總結14</p><p><b>  參考文獻15</b></p><p><b>  附錄:15</b></p>

7、<p><b>  1 可行性研究</b></p><p>  教務管理工作是高等學校教育工作的一項重要內容,是整個學校管理的核心和基礎。教務管理工作是指學校管理人員按照一定的教育方針,運用先進的管理手段,組織、協(xié)調、指揮并指導個方面人員的活動,以更高效率、高質量地完成各項教學任務,完成國家所制定的教育目標。教務管理工作是教學工作的中樞,是保證高校教學機制正常運轉的樞紐,它是一項目

8、的性、計劃性、適應性、創(chuàng)造性和科學性很強的工作。教務管理在高校教學秩序穩(wěn)定和教學質量的提高,關系到高校的發(fā)展和人才的培養(yǎng),教務管理在高校中占有相當重要的地位。</p><p>  隨著計算機技術的飛速發(fā)展和高校教育體制改革的不斷深入,傳統(tǒng)的教務管理方法、手段以及工作效率已不能適應新的發(fā)展需要,無法很好地完成教學管理工作。提高教務管理水平的主要途徑是更新管理者的思想,增強對管理活動的科學認識。同時,運用先進的信息技

9、術,開發(fā)高校綜合教務管理信息系統(tǒng),是深化教務體制改革的有利措施。</p><p><b>  2 需求分析</b></p><p><b>  2.1 任務概述</b></p><p>  主要分為以下幾項管理:</p><p> ?。?)基礎數(shù)據(jù)管理:“基礎數(shù)據(jù)管理”用于維護整個教務系統(tǒng)正常運行所

10、需的基礎數(shù)據(jù)集,以確保教務系統(tǒng)有一個統(tǒng)一、標準的基礎數(shù)據(jù)集,便于數(shù)據(jù)的共享使用,內容包括入學年份、學年學期、院系數(shù)據(jù)、專業(yè)設置、教研室情況等。</p><p> ?。?)教學計劃管理:“教學計劃管理”用于維護學校中各系各專業(yè)的課程、課組計劃安排信息,作為選課和畢業(yè)審查的標準,包括的功能有課程計劃登記、課程計劃審批、選課情況查詢、選課信息審批等。</p><p>  (3)學籍管理:“學籍管

11、理”主要包括了高校學籍管理的常用信息,提供對學生學籍基本信息錄入、查詢、修改、打印輸出、維護等常用功能。</p><p> ?。?)課程管理:“課程管理”主要負責對課程時間、地點的安排以及開課系列、教師的信息維護等功能。</p><p> ?。?)學生管理:“學生管理”主要對學生的詳細信息,考試成績,交費情況,正常運轉等功能的維護。</p><p><b>

12、;  2.2 運行環(huán)境 </b></p><p>  Windows 98/2000/XP/2003操作系統(tǒng)下,安裝并配置軟件Microsoft SQL Server 2000數(shù)據(jù)庫管理系統(tǒng)。 </p><p>  2.3 系統(tǒng)數(shù)據(jù)流圖</p><p>  系統(tǒng)的數(shù)據(jù)流程如圖所示</p><p>  圖2-1系統(tǒng)的數(shù)據(jù)流程圖<

13、;/p><p>  2.4 一致性需求 </p><p>  在教務管理系統(tǒng)相關的表之間,有較強的關聯(lián)性,為了實現(xiàn)一致性的需求,我們在各個表之間建立起了一致性約束。 </p><p>  2.5 完整性需求 </p><p>  根據(jù)教務管理系統(tǒng)的要求,為保持數(shù)據(jù)的完整性,采用了數(shù)據(jù)庫的事務機制,防止出現(xiàn)操作故障。</p><

14、p><b>  3 概要設計</b></p><p><b>  3.1接口設計 </b></p><p>  3.1.1 外部接口 </p><p>  通過一定的計算機硬件,建立服務器系統(tǒng),管理員通過管理服務器系統(tǒng),與用戶進行交互,從而達到資源共享的目的,實現(xiàn)教務管理系統(tǒng)。 </p><p&g

15、t;  3.1.2 內部接口 </p><p>  程序內部需要共同的數(shù)據(jù)定義和描述,此系統(tǒng)是智能辦公化管理系統(tǒng)的一個子系統(tǒng),必須和這個系統(tǒng)的其他子系統(tǒng)統(tǒng)一數(shù)據(jù)定義等,才能使該系統(tǒng)性能達到最好,并且要盡量消除和其他子系統(tǒng)模塊之間存在的數(shù)據(jù)冗余,才能使整個智能辦公系統(tǒng)做到高效方便。 </p><p><b>  3.2 E—R圖</b></p><p

16、>  3.2.1 局部E-R圖</p><p>  圖3-1 班級信息圖</p><p>  圖3-2 籍貫代碼 圖3-3 民族代碼圖 圖3-4學籍代碼圖</p><p>  圖3-5政治面貌圖 </p><p><b>  圖3

17、-6課程圖</b></p><p><b>  圖3-7選課圖</b></p><p><b>  圖3-8 學生圖</b></p><p><b>  圖3-9 成績圖</b></p><p>  圖3-10 課程信息圖

18、 圖3-11 費用圖</p><p>  3.2.1 全局E-R圖</p><p>  圖3-12 教務系統(tǒng)E—R圖</p><p><b>  4 邏輯設計</b></p><p>  4.1 關系模式轉換</p><p>  班級信息表:班級(班級編號,年級,班級名稱,班級

19、簡稱,人數(shù),導員)</p><p>  籍貫代碼表:籍貫代碼表(籍貫編號,籍貫)</p><p>  民族代碼表:民族代碼表(民族編號,民族)</p><p>  政治面貌代碼表:政治面貌代碼表(政治面貌編號,政治面貌)</p><p>  學籍代碼表:學籍代碼表(學籍編號,學籍名稱)</p><p>  選課表:選課

20、(學號,課程編號,課序號)</p><p>  學生表:學生(學號,姓名,性別,年齡,所在系,班級編號,政治面貌編號,民族編號,籍貫編號,學籍編號)</p><p>  成績表:成績表(學號,課程編號,成績,考試次數(shù),是否補修,是否重考,是否已經(jīng)確定考試成績)</p><p>  課程信息表:課程信息(課程編號,課程名稱,先修課,教師,系別,學分)</p>

21、;<p>  費用表:費用(費用單號,學號,學費,住宿費,課本費,雜費,補考費)</p><p>  課程表:課程表(課序號,課程編號,上課時間天,上課時間節(jié),上課地點)</p><p>  4.2 各實體及其屬性表格</p><p><b>  (1)成績表</b></p><p><b>  

22、(2)班級表</b></p><p><b>  (3)學生表 </b></p><p><b>  (4)費用表</b></p><p><b>  (5)學籍代碼表</b></p><p>  (6)政治面貌代碼表</p><p><

23、;b>  (7)民族代碼表</b></p><p><b>  (8)籍貫代碼表</b></p><p><b>  (9)課程信息表</b></p><p><b>  (10)課程表</b></p><p><b>  (11)選課表</b

24、></p><p><b>  5 數(shù)據(jù)庫實現(xiàn)</b></p><p><b>  5.1 創(chuàng)建數(shù)據(jù)庫</b></p><p>  打開SQL Server企業(yè)管理器,新建一個數(shù)據(jù)庫,名稱為“教務管理系統(tǒng)”,完成數(shù)據(jù)庫的設計。</p><p><b>  5.2 創(chuàng)建數(shù)據(jù)表</

25、b></p><p><b> ?。?)班級表</b></p><p><b> ?。?)成績表</b></p><p><b> ?。?)費用表</b></p><p><b>  (4)課程信息表</b></p><p>

26、<b> ?。?)學生表</b></p><p><b>  5.3 創(chuàng)建索引</b></p><p>  學生表按學號升序建唯一索引</p><p>  CREATE UNIQUE INDEX 學生學號 ON 學生(學號)</p><p>  課程信息表按課程編號升序建唯一索引</p>

27、<p>  CREATE UNIQUE INDEX 課程編號引 ON 課程信息(課程編號)</p><p>  選課表按學號升序和課程編號按降序建唯一索引</p><p>  CREATE UNIQUE INDEX 選課引 ON 選課(學號 ASC,課程編號 DESC)</p><p>  成績表按成績降序排列建立索引</p><p

28、>  CREATE CLUSTER INDEX 成績降序 ON 成績表(成績 DESC)</p><p><b>  5.4 創(chuàng)建視圖</b></p><p>  5.4.1 定義視圖</p><p>  建立數(shù)理系學生的視圖,并要求進行修改和插入操作時仍需保證該視圖只有該系的學生。</p><p>  CREAT

29、E VIEW CS(SNO,SNAME,SSEX,AGE)</p><p><b>  AS</b></p><p>  SELECT 學號,姓名,性別,年齡</p><p><b>  FROM 學生</b></p><p>  WHERE 所在系=’數(shù)理’</p><p>

30、;  WITH CHECK OPTION</p><p>  5.4.2 查詢視圖</p><p>  查詢數(shù)理視圖中學號為200903的學生的姓名、年齡及學號。</p><p>  SELECT SNAME,AGE,SNO</p><p><b>  FROM CS</b></p><p>  

31、WHERE SNO=’200903’</p><p>  5.5 創(chuàng)建存儲過程與觸發(fā)器</p><p>  5.5.1 存儲過程</p><p>  在數(shù)據(jù)庫中,創(chuàng)建一個名為IR的存儲過程,該過程的功能是向學生表中插入一條記錄,信記錄由參數(shù)提供。</p><p>  CREATE PROCEDURE IR</p><p&g

32、t;  (@學號 varchar(14),</p><p>  @姓名 varchar(8)</p><p>  @性別 varchar(8)</p><p>  @年齡 smallint</p><p>  @所在系 varchar(14)</p><p>  @班級編號 varchar(2)</p>

33、<p>  @政治面貌編號 varchar(2)</p><p>  @民族編號 varchar(2)</p><p>  @籍貫編號 varchar(2)</p><p>  @學籍編號 varchar(2)</p><p><b>  )</b></p><p><b> 

34、 AS</b></p><p>  INSERT INTO 學生VALUES(@學號,@姓名,@性別,@年齡,@所在系,@班級編號,@政治面貌編號,@民族編號,@籍貫編號,@學籍編號)</p><p><b>  exec IR</b></p><p>  @學號='200906',</p><p

35、><b>  @姓名='張飛',</b></p><p><b>  @性別='女',</b></p><p><b>  @年齡='22',</b></p><p>  @所在系='計算機',</p><p&g

36、t;  @班級編號='1',</p><p>  @政治面貌編號='0',</p><p>  @民族編號='1',</p><p>  @籍貫編號='0',</p><p><b>  @學籍編號='0'</b></p>&l

37、t;p><b>  5.5.2觸發(fā)器</b></p><p>  創(chuàng)建一個觸發(fā)器,當向學生表中插入一條記錄時,自動顯示學生表中的記錄。</p><p>  CREATE TRIGGER ch</p><p><b>  on 學生</b></p><p>  FOR INSERT</p&

38、gt;<p><b>  AS</b></p><p>  SELECT*FROM 學生</p><p><b>  6 系統(tǒng)測試</b></p><p><b>  6.1 數(shù)據(jù)查詢</b></p><p> ?。?)查詢學號為200903同學所繳納的總費用&l

39、t;/p><p> ?。?)查詢選修02號課程且成績在80分以上的學生</p><p> ?。?)查詢學號為200901的同學的上課地點都在哪里</p><p><b>  6.2 數(shù)據(jù)更新</b></p><p><b>  插入一條學生記錄</b></p><p><b

40、>  INSERT </b></p><p><b>  INTO 學生</b></p><p>  VALUES(‘200905’,’楊一濤’,’男’,’22’,’計算機’,’2’,’1’,’1’,’0’,’0’)</p><p><b>  7 課程設計總結</b></p><p&

41、gt;  通過這次對數(shù)據(jù)庫的課程設計,不僅僅讓我對所學的知識有了更深一步的掌握及理解,同時也得到了很多有用的發(fā)現(xiàn)及認識,大體有一下幾個方面。</p><p>  首先,設計始終應帶著面向對象的思想去設計,這是設計的基本原則。對象的抽取應該符合真實性和抽象性,不能將對象強制抽取合并。 其次,在數(shù)據(jù)設計中,數(shù)據(jù)的使用率和冗余應該是設計考慮的通用標準。對外鍵的認識不能停留在表面,它代表了一對多的關系,它在真實的

42、實體之間也能體現(xiàn)這關系的。</p><p>  最后,雖然目前我們的數(shù)據(jù)庫設計模式能夠滿足開發(fā)要求,也節(jié)省了開發(fā)時間,但是這樣的設計會對以后工程項目的維護、改版造成成本上的增加。數(shù)據(jù)庫表的字段在修改上將對主程序造成影響;另外對于開發(fā)和維護人員來說,字段的編碼也需要規(guī)范化,這樣可以統(tǒng)一字段編碼,讓維護人員一看就懂,增添的字段對以后接手項目的人員來說則很容易上手。</p><p><b&

43、gt;  參考文獻</b></p><p>  [1]望珊,薩師煊.數(shù)據(jù)庫系統(tǒng)概論[M]. 北京:高等教育出版社, 2006.5:75-83     </p><p>  [2] 范立南,劉天惠等. SQL Server 2000 實用教程[M]. 北京:清華大學出版社,2004.02:47-138</p>

44、<p>  [3] Thomas M.Connolly ,Carolyn E.Begg . 數(shù)據(jù)庫設計教程[M]. 北京: 機械工業(yè)出版社, 2005.1:1-49</p><p><b>  附錄:</b></p><p> ?。?)創(chuàng)建“班級”數(shù)據(jù)表</p><p>  CREATE TABLE 班級</p>&

45、lt;p>  (班級編號 VARCHAR(14) NOT NULL,</p><p>  年級 VARCHAR(4) ,</p><p>  班級名稱 VARCHAR(30),</p><p>  班級簡稱 VARCHAR(16),</p><p>  人數(shù) NUMERIC(3,0),</p><p>  導員

46、VARCHAR (8))</p><p>  (2)創(chuàng)建“學生”數(shù)據(jù)表</p><p>  CREATE TABLE 學生</p><p>  (學號 VARCHAR(14) NOT NULL,</p><p>  姓名 VARCHAR(8),</p><p>  性別 VARCHAR(2),</p>&

47、lt;p>  年齡 SMALLINT,</p><p>  所在系 VARCHAR(20),</p><p>  班級編號 VARCHAR(14),</p><p>  政治面貌編號 VARCHAR(2),</p><p>  民族編號 VARCHAR(2),</p><p>  籍貫編號 VARCHAR(2),

48、</p><p>  學籍編號 VARCHAR(2))</p><p> ?。?)創(chuàng)建“課程信息”數(shù)據(jù)表</p><p>  CREATE TABLE 課程信息</p><p>  (課程編號 VARCHAR(8) NOT NULL,</p><p>  課程名稱 VARCHAR(30) NOT NULL,</p

49、><p>  先修課 VARCHAR(30),</p><p>  教師 VARCHAR(8),</p><p>  系別 VARCHAR(20),</p><p>  學分 SMALLINT)</p><p>  (4)創(chuàng)建“課程表”數(shù)據(jù)表</p><p>  CREATE TABLE 課程表&l

50、t;/p><p>  (課序號 VARCHAR(14) NOT NULL,</p><p>  課程編號 VARCHAR(8) NOT NULL,</p><p>  上課時間天 INT NOT NULL,</p><p>  上課時間節(jié) INT NOT NULL,</p><p>  上課地點 VARCHAR(20) N

51、OT NULL)</p><p> ?。?)創(chuàng)建“成績表”數(shù)據(jù)表</p><p>  CREATE TABLE成績表</p><p>  (學號 VARCHAR(14) NOT NULL,</p><p>  課程編號 VARCHAR(8) NOT NULL,</p><p>  成績 SMALLINT,</p

52、><p>  考試次數(shù) SMALLINT,</p><p>  是否補修 VARCHAR(2),</p><p>  是否重考 VARCHAR(2),</p><p>  是否已經(jīng)確定考試成績 VARCHAR(2))</p><p> ?。?)創(chuàng)建“費用”數(shù)據(jù)表</p><p>  CREATE T

53、ABLE 費用</p><p>  (費用單號 VARCHAR(14) NOT NULL,</p><p>  學號 VARCHAR(14) NOT NULL,</p><p><b>  學費 MONEY,</b></p><p>  住宿費 MONEY,</p><p>  課本費 MONEY

54、,</p><p><b>  雜費 MONEY,</b></p><p>  補考費 MONEY)</p><p>  (7)創(chuàng)建“選課”數(shù)據(jù)表</p><p>  CREATE TABLE 選課</p><p>  (學號 VARCHAR(14) NOT NULL,</p>&l

55、t;p>  課程編號 VARCHAR(8) NOT NULL,</p><p>  課序號 VARCHAR(14) NOT NULL,)</p><p>  (8)創(chuàng)建其他關鍵數(shù)據(jù)表</p><p>  CREATE TABLE 政治面貌代碼表</p><p>  (政治面貌編號 CHAR(2) NOT NULL,</p>

56、;<p>  政治面貌 VARCHAR(14))</p><p><b>  GO</b></p><p>  CREATE TABLE 民族代碼表</p><p>  (民族編號 CHAR(2) NOT NULL,</p><p>  民族 VARCHAR(18))</p><p&g

57、t;<b>  GO</b></p><p>  CREATE TABLE 學籍代碼表</p><p>  (學籍編號 CHAR(2) NOT NULL,</p><p>  學籍名稱 VARCHAR(8))</p><p><b>  GO</b></p><p>  C

溫馨提示

  • 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

提交評論