sql學生成績管理系統(tǒng)課程設(shè)計數(shù)據(jù)庫_第1頁
已閱讀1頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、<p><b>  目 錄</b></p><p>  CHAP 1 需求分析2</p><p><b>  1.1需求分析2</b></p><p>  1.1.1 數(shù)據(jù)需求2</p><p>  1.1.2 功能描述2</p><p><b>

2、;  1.2數(shù)據(jù)字典2</b></p><p><b>  1.3數(shù)據(jù)流圖6</b></p><p>  CHAP 2 概念模型設(shè)計8</p><p>  2.1 E-R模型8</p><p>  2.1.1 數(shù)據(jù)庫的局部E-R圖8</p><p>  2.1.2 數(shù)據(jù)庫完

3、整E-R圖9</p><p>  CHAP 3 邏輯模型設(shè)計10</p><p>  3.1 E-R圖向關(guān)系模型的轉(zhuǎn)換10</p><p>  3.2 數(shù)據(jù)模型的規(guī)范化11</p><p>  CHAP 4 數(shù)據(jù)庫的物理設(shè)計13</p><p>  4.1系統(tǒng)結(jié)構(gòu)設(shè)計13</p><

4、p>  4.1.1系統(tǒng)功能模塊13</p><p>  4.1.2管理員功能模塊13</p><p>  4.1.3用戶功能模塊15</p><p>  CHAP 5 數(shù)據(jù)庫的實施16</p><p>  5.1 創(chuàng)建數(shù)據(jù)庫16</p><p>  5.1.1 創(chuàng)建表16</p>&l

5、t;p>  5.1.2 創(chuàng)建索引17</p><p>  5.1.3 創(chuàng)建觸發(fā)器18</p><p>  5.2組織數(shù)據(jù)入庫19</p><p>  CHAP 6 數(shù)據(jù)庫的運行于維護21</p><p><b>  設(shè)計心得22</b></p><p><b>  參考

6、文獻23</b></p><p>  學生成績管理系統(tǒng)數(shù)據(jù)庫</p><p>  CHAP 1 需求分析</p><p><b>  1.1需求分析</b></p><p>  高校學生的成績管理工作量大、繁雜,人工處理非常困難。學生成績管理系統(tǒng)借助于計算機強大的處理能力,大大減輕了管理人員的工作量,并提

7、高了處理的準確性。學生成績管理系統(tǒng)的開發(fā)運用,實現(xiàn)了學生成績管理的自動化,不僅把廣大教師從繁重的成績管理工作中解脫出來、把學校從傳統(tǒng)的成績管理模式中解放出來,而且對學生成績的判斷和整理更合理、更公正,同時也給教師提供了一個準確、清晰、輕松的成績管理環(huán)境。</p><p>  1.1.1 數(shù)據(jù)需求</p><p>  能夠進行數(shù)據(jù)庫的數(shù)據(jù)定義、數(shù)據(jù)操縱、數(shù)據(jù)控制等處理功能,進行聯(lián)機處理的相應

8、時間要短。</p><p>  1.1.2 功能描述</p><p>  具體功能應包括:系統(tǒng)應該提供課程安排數(shù)據(jù)的插入、刪除、更新、查詢;成績的添加、修改、刪除、查詢,學生基本信息查詢的功能。</p><p><b>  1.2數(shù)據(jù)字典</b></p><p>  1)課程信息(class information):

9、 </p><p> ?。n程號(cno) char(10) primary key 定義為主鍵</p><p> ?。n程名cname) char(10) 非空</p><p> ?。處熖?teano) char(10) 非空</p>

10、<p>  | 學分(credit) char(4) 非空</p><p>  2學生信息(student information): </p><p>  |學號(sno) char(10) primary key 定義主鍵</p><

11、;p>  |姓名(sname) char(10) 非空</p><p> ?。詣e(ssex)char(2) 非空</p><p>  |年齡(sage) char(2) 非空</p><p> ?。鼘I(yè)(major) char(10) 非空</p><p>  |系別(depart) char(10) 非空</p>&

12、lt;p>  3)成績信息(score information): </p><p> ?。鼘W號(sno) char(10) primary key 定義主鍵</p><p> ?。n程號(cno)char(10) 非空</p><p> ?。?/p>

13、成績(degree)char(10) 非空</p><p> ?。n程名( cname)char(10) 非空</p><p><b>  1.3數(shù)據(jù)流圖</b></p><p><b>  頂層圖</b></p><p><b>  管理員信息數(shù)據(jù)流圖</b></p&g

14、t;<p><b>  總數(shù)據(jù)流圖</b></p><p>  CHAP 2 概念模型設(shè)計</p><p><b>  2.1 E-R模型</b></p><p>  2.1.1 數(shù)據(jù)庫的局部E-R圖</p><p>  概念結(jié)構(gòu)設(shè)計階段是整個數(shù)據(jù)庫設(shè)計的關(guān)鍵,它通過對用戶需求進行綜

15、合、歸納與抽象,形成一個獨立于具體DBMS的概念模型。</p><p>  設(shè)計教室管理數(shù)據(jù)庫包括班級、教室、課程、三個關(guān)系。</p><p><b>  E-R圖如下</b></p><p><b>  課程信息圖</b></p><p><b>  成績圖</b></

16、p><p><b>  學生信息表</b></p><p>  2.1.2 數(shù)據(jù)庫完整E-R圖</p><p>  CHAP 3 邏輯模型設(shè)計</p><p><b>  邏輯結(jié)構(gòu)設(shè)計階段</b></p><p>  E-R圖向關(guān)系模型轉(zhuǎn)化要解決的問題是如何將實體型和實體間的聯(lián)

17、系轉(zhuǎn)化為關(guān)系模式,如何確定這些關(guān)系模式的屬性和碼。</p><p>  設(shè)計學生成績管理數(shù)據(jù)庫,包括課程、學生、教成績?nèi)齻€關(guān)系, 其關(guān)系模式中對每個實體定義的屬性如下:</p><p>  課程信息表:(課程號,課程名,教師號,學分)</p><p>  此為聯(lián)系“課程信息表”所對應的關(guān)系模式。課程名為該關(guān)系的候選碼。</p><p>  學

18、生信息表:(學號,姓名,性別,年齡,專業(yè),系別)</p><p>  此為聯(lián)系“學生信息表”所對應的關(guān)系模式。學號為該關(guān)系的候選碼。</p><p>  成績表:(學號,課程號,課程名,成績)</p><p>  此為聯(lián)系“輸入”所對應的關(guān)系模式。題目編號、管理號為該關(guān)系的候選碼</p><p>  數(shù)據(jù)庫中包含3個表,即課程信息(class

19、 information),學生信息(student information),成績信息(score information)。</p><p>  3.2 數(shù)據(jù)模型的規(guī)范化</p><p><b> ?。┱n程信息圖</b></p><p><b>  2.)學生信息圖</b></p><p>&l

20、t;b>  )學分信息圖</b></p><p>  CHAP 4 數(shù)據(jù)庫的物理設(shè)計</p><p><b>  4.1系統(tǒng)結(jié)構(gòu)設(shè)計</b></p><p>  4.1.1系統(tǒng)功能模塊</p><p>  CHAP 5 數(shù)據(jù)庫的實施</p><p><b>  5.

21、1 創(chuàng)建數(shù)據(jù)庫</b></p><p>  create database stuDB</p><p><b>  5.1.1 創(chuàng)建表</b></p><p>  在此學生成績管理系統(tǒng)中需要創(chuàng)建三個表,即課程信息表、學生信息表和成績表。</p><p>  創(chuàng)建數(shù)據(jù)庫后,為stuDB數(shù)據(jù)庫添加數(shù)據(jù)表,步驟如下

22、。</p><p><b>  新建查詢窗口</b></p><p>  在查詢窗口中鍵入下列SQL語句</p><p>  create table Class( //創(chuàng)建課程信息表</p><p>  cno char(10) primary key, //課程號&

23、lt;/p><p>  cname char(10) not null, //課程名</p><p>  teano char(10) Not null //教師號</p><p>  credit char(4), Not null //學分</p><p><b>  ) </b>

24、</p><p>  執(zhí)行上述SQL語句即可創(chuàng)建課程信息表相關(guān)表格</p><p>  create table student1( //創(chuàng)建學生信息表</p><p>  sno char(10) primary key, //學號</p><p>  sname

25、 char(10) not null, //姓名</p><p>  ssex char(2) not null, //性別 </p><p>  Sage char(2) not null, //年齡</p><p>  Major char(10) not null,

26、//專業(yè)</p><p>  Depart char(10) not null, / /系別</p><p><b>  )</b></p><p>  執(zhí)行上述SQL語句即可創(chuàng)建學生信息表相關(guān)表格</p><p>  create table score( //創(chuàng)建成績表<

27、/p><p>  sno char(10), //學號</p><p>  cno char(10), //課程號</p><p>  cdegree char(10), //學分</p><p>  cname char(10), //課程名</p>&

28、lt;p>  執(zhí)行上述SQL語句即可創(chuàng)建成績表相關(guān)表格</p><p><b>  學生信息相關(guān)表格</b></p><p><b>  課程信息相關(guān)表格</b></p><p><b>  成績信息表</b></p><p>  5.1.2 創(chuàng)建索引</p>

29、<p><b>  創(chuàng)建索引:</b></p><p>  (1) 在class表的cno列上創(chuàng)建非聚集索引。</p><p>  Create index classrname ON class (cno)</p><p>  (2) 在student1表的sno列上創(chuàng)建非聚集索引。</p><p>

30、  Create unique index student1no ON Student1 (sno)</p><p>  (3) 在Student1表的sno列創(chuàng)建一個非聚集索引,要求索引鍵值按sno升序排列。</p><p>  Create index student1no ON student1(sno ASC)</p><p><b>  

31、5.2組織數(shù)據(jù)入庫</b></p><p><b>  課程信息表</b></p><p><b>  學生信息表</b></p><p><b>  成績信息表</b></p><p>  CHAP 6 數(shù)據(jù)庫的運行于維護</p><p>

32、;  1、數(shù)據(jù)定義:基本表的創(chuàng)建、修改及刪除;索引的創(chuàng)建和刪除;視圖的創(chuàng)建和刪除</p><p>  (1)基本表的創(chuàng)建,建表語句</p><p>  create table students(</p><p>  stuno char(10) primary key, </p><p>  stuname

33、 varchar(40) not null, </p><p>  stusex char(2) not null, </p><p>  stuage char(10) not null, </p><p>  stumajor char(10) not null,

34、 </p><p>  studepart char(10) not null, </p><p><b>  )</b></p><p><b> ?。?)基本表的刪除</b></p><p>  drop tabl

35、e students </p><p><b>  2、數(shù)據(jù)操作</b></p><p><b>  數(shù)據(jù)庫查詢操作</b></p><p><b>  A.單表查詢:</b></p><p> ?。?)查詢sno為09901學生的sname</p><p&

36、gt;  select sname</p><p>  from student</p><p>  where sno=' 0901'</p><p><b>  結(jié)果:</b></p><p> ?。?)查詢ssex為’女’并且sdepart為’金融系’的sname</p><p&

37、gt;  select sname</p><p>  from student</p><p>  where ssex ='女' and</p><p>  sdepart ='金融系'</p><p><b>  結(jié)果:</b></p><p> ?。?)查詢

38、所有學生的姓名和系別。</p><p>  select sname,Depart</p><p>  from student</p><p><b>  結(jié)果:</b></p><p> ?。?)查詢Depart為計算機系的sname。</p><p>  select sname</

39、p><p>  from student</p><p>  where Depart ='計算機系'</p><p><b>  結(jié)果:</b></p><p> ?。?)查詢所有學生所在院系名稱</p><p>  select distinct Depart</p>

40、<p>  from student</p><p><b>  結(jié)果:</b></p><p> ?。?)查詢學生信息表中年齡小于21和年齡大于21的學生的姓名和系別</p><p>  select sname,Depart</p><p>  from student</p>&

41、lt;p>  where sage>21 or sage<21</p><p><b>  結(jié)果:</b></p><p><b>  B.嵌套查詢</b></p><p>  查詢選修了0304這門課的所有學生的學號、姓名、年齡、院系</p><p>  Select sno,

42、sname,sage,Depart</p><p>  From student</p><p>  Where sno in</p><p>  (select sno</p><p>  From score</p><p>  Where cno=’0304’)</p><p><b

43、>  查詢結(jié)果</b></p><p><b>  3、數(shù)據(jù)庫更新操作</b></p><p><b>  A.插入數(shù)據(jù)</b></p><p>  向Student表中添加一項記錄:</p><p>  姓名:楊昇昇,學號:0907,性別:男,年齡:22專業(yè):信息管理,系別:金融

44、系</p><p><b>  Insert</b></p><p><b>  Into </b></p><p>  Student1(Sno,Sname, Ssex,sage,major,depart)</p><p>  Values ('0907',' 楊昇昇

45、9;, '男',' 22',' 信息管理','金融系')</p><p><b>  B.修改數(shù)據(jù)</b></p><p>  修改的學號為0908:</p><p>  Update Student</p><p>  Set Sno=’0908’<

46、/p><p>  Where Sname=’陳波’;</p><p><b>  C.刪除數(shù)據(jù)</b></p><p>  刪除所有金融學生的記錄</p><p><b>  Delete </b></p><p>  from student</p><p&

47、gt;  Where(depart=’金融系’);</p><p>  4、視圖的操作:數(shù)據(jù)庫視圖的定義(創(chuàng)建和刪除)、查詢和更新</p><p>  A.查詢所有學生選課的信息,包括學號、姓名、課程號、課程名、成績</p><p>  create view score1</p><p><b>  as</b><

48、;/p><p>  select student.sno'學號',student.sname'學生名',class.cno'課程號',class.cname'課程名',score.degree'成績'</p><p>  from student,class,score</p><p> 

49、 where student.sno=score.sno and class.cno=score.cno </p><p><b>  Go</b></p><p><b>  查詢結(jié)果</b></p><p><b>  B.更新視圖:</b></p><p>  (1)修改

50、信息:將宋丹丹的名字改為宋丹</p><p>  Update score1</p><p>  set 學生名='宋丹丹'</p><p>  where 學生名='宋丹'</p><p>  (2)刪除信息:刪除視圖score1中王恒文的記錄</p><p><b>  d

51、elete</b></p><p>  from score</p><p>  where 學生名='王恒文'</p><p><b>  七、總結(jié)</b></p><p><b>  設(shè)計心得</b></p><p>  經(jīng)過這一周半的課程設(shè)計

52、,我對數(shù)據(jù)庫的理解又加深了一步,從簡單的理論到實際上機操作中間的種種困難,都必須自己去克服和摸索,這對我來說,是一個巨大的挑戰(zhàn)。而當完成了以后,我發(fā)現(xiàn)自己基本能將書本上的章節(jié)都融會貫通,從而也達到了復習的效果。</p><p>  在整個設(shè)計過程中,我也著實遇到了很多麻煩,這些以前容易忽視掉的問題,有時候在上機的時候就顯的尤為重要。比如說書本上代碼基于的版本和實際運行的環(huán)境存在不兼容性,這就使得我在整個代碼編寫的

53、過程中要不斷的查閱資料,不斷進行調(diào)試。雖然比較浪費時間,但在這同時,也提高了我自學的能力,養(yǎng)成了良好的學習習慣。此外,在設(shè)計整體和局部E-R圖時,實體和屬性的選擇,以及實體于實體間的聯(lián)系,都是經(jīng)過幾次修改,不斷的研究系統(tǒng)性能的情況下才完成的。而這每一次的修改,又牽動了后續(xù)的進行,經(jīng)過這樣反復的修改和思考,才使得系統(tǒng)的模型基于成熟,然后再考慮代碼的時候就比較得心應手了。</p><p>  當然在整個過程中還不得不

54、強調(diào)團隊意識,在思考問題的過程中,一個人的力量顯然是不夠的,需要多方的配合才能最終完成任務(wù)。印象最深的是需求部分和概念模型的設(shè)計,都是依靠大家共同討論來完成的。當然還有老師的參與,在此應該表示感謝,感覺整個模型大部分都是你給分析出來的嘛。</p><p>  最后,此次的課程設(shè)計確實讓我受益匪淺。起碼在已有的水平上,我的理論與實踐都有了長足的進步。這對以后的設(shè)計也是一筆寶貴的財富。</p><

溫馨提示

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

最新文檔

評論

0/150

提交評論