課程設(shè)計(jì)--教室管理系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)_第1頁(yè)
已閱讀1頁(yè),還剩18頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p>  SQL SERVER基礎(chǔ) 課 程 設(shè) 計(jì) </p><p>  題 目 教室管理系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì) </p><p>  系 (部) 經(jīng)濟(jì)管理系 </p><p>  班 級(jí) </p><p>  姓 名

2、 </p><p>  學(xué) 號(hào) </p><p>  指導(dǎo)教師 </p><p>  SQL SERVER基礎(chǔ)課程設(shè)計(jì)任務(wù)書</p><p><b>  課程設(shè)計(jì)成績(jī)?cè)u(píng)定表</b></p

3、><p><b>  1系統(tǒng)需求分析</b></p><p>  在大學(xué)里,教室仍然是教學(xué)的主要場(chǎng)所,也是學(xué)生學(xué)習(xí)的重要場(chǎng)所,所以教室環(huán)境和設(shè)備直接影響到教學(xué)活動(dòng)的開展和學(xué)生的學(xué)習(xí)。然而,由于學(xué)生數(shù)目過大,教室資源有限限制了師生使用教室。一些學(xué)校對(duì)教室的管理僅限于人工管理,面對(duì)如此大的信息數(shù)據(jù)[1],處理起來就比較復(fù)雜。為了保證教室環(huán)境良好的運(yùn)轉(zhuǎn),教師的管理也就顯得十分的

4、必要和重要。但是教室的管理也并不是一件很容易的事情。教室的使用具有一定的計(jì)劃性和流動(dòng)性,即一個(gè)班在相應(yīng)的時(shí)間里,所上的課程和使用的教室是固定的,但是不同的課程在不同的時(shí)間里會(huì)使用不同的教室,這與教務(wù)處的課程安排是密切相關(guān)的。因此,為了能夠更系統(tǒng)的、更有序的、更合理的、更有效的進(jìn)行教室管理,有必要利用計(jì)算機(jī)來處理各種信息,這也就需要一個(gè)更有效的教室管理系統(tǒng)。本系統(tǒng)主要任務(wù)是對(duì)教室、學(xué)生、教師、課程、校工、查詢進(jìn)行統(tǒng)一管理,滿足各類用戶需求

5、。</p><p><b>  2數(shù)據(jù)庫(kù)分析</b></p><p>  數(shù)據(jù)庫(kù)技術(shù)是信息系統(tǒng)的一個(gè)核心技術(shù),通過研究數(shù)據(jù)庫(kù)的結(jié)構(gòu)、儲(chǔ)存、設(shè)計(jì)、管理以及基本理論和實(shí)現(xiàn)方法并利用這些理論來實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行處理、分析和理解[3]。教室管理系統(tǒng)就是要求通過該系統(tǒng)對(duì)校工、教室、教室、學(xué)生、課程信息等進(jìn)行統(tǒng)一管理,從而提高工作效率。在數(shù)據(jù)庫(kù)的研究與開發(fā)中,數(shù)據(jù)庫(kù)管理器就

6、起著十分顯著的作用。通過該課程的設(shè)計(jì),學(xué)習(xí)數(shù)據(jù)庫(kù)設(shè)計(jì)工具的使用,搞清數(shù)據(jù)庫(kù)設(shè)計(jì)的基本方法、步驟和數(shù)據(jù)庫(kù)設(shè)計(jì)各階段的任務(wù),完成對(duì)教室的管理。</p><p>  這就要求,有一定的數(shù)據(jù)庫(kù)設(shè)計(jì)。本系統(tǒng)主要是面向教室管理的相關(guān)職工,實(shí)現(xiàn)有關(guān)數(shù)據(jù)的查詢、錄入和修改,其相關(guān)實(shí)現(xiàn)是用存儲(chǔ)過程實(shí)現(xiàn)的,這樣對(duì)用戶比較方便。對(duì)其功能主要是實(shí)現(xiàn)了兩個(gè)模塊的功能,教室查詢子系統(tǒng),維修管理子系統(tǒng)。他們主要包括學(xué)生、教師對(duì)課程的查詢,學(xué)生

7、對(duì)空教室的查詢,員工對(duì)設(shè)備的維修。這些管理數(shù)據(jù)庫(kù)的方法。都能對(duì)圖書館里系統(tǒng)的管理起到事半功倍的效果。</p><p><b>  3數(shù)據(jù)庫(kù)設(shè)計(jì)部分</b></p><p>  3.1 實(shí)體、聯(lián)系、屬性及E_R圖</p><p>  根據(jù)數(shù)據(jù)庫(kù)分析,確定實(shí)體及實(shí)體間聯(lián)系,及各個(gè)實(shí)體和聯(lián)系的屬性并設(shè)計(jì)出E-R 圖[2]。</p>&l

8、t;p><b>  實(shí)體、聯(lián)系</b></p><p><b>  實(shí)體:</b></p><p>  實(shí)體教室,具有教師編號(hào),教室容納人數(shù),教室設(shè)備,教室位置,教室空閑屬性</p><p>  實(shí)體教師,具有教師編號(hào),教師姓名,教師所在院系,教師職稱屬性。</p><p>  實(shí)體學(xué)生,具有

9、學(xué)號(hào),姓名,年齡,班級(jí),專業(yè),所在系屬性。</p><p>  實(shí)體課程,具有課程號(hào),課程名稱,教室編號(hào)屬性。</p><p>  實(shí)體校工,具有校工號(hào),校工姓名,情態(tài),電話號(hào)碼屬性。</p><p><b>  聯(lián)系:</b></p><p>  學(xué)生與教室,是學(xué)生與教室之間的一個(gè)多對(duì)多的聯(lián)系。</p>

10、<p>  學(xué)生與課程,是學(xué)生與課程之間的一個(gè)多對(duì)多的聯(lián)系。</p><p>  教師與課程,是教師與課程之間的一個(gè)多對(duì)多的聯(lián)系。</p><p>  教師與教室,是教師與教室之間的一個(gè)多對(duì)多的聯(lián)系。</p><p>  教室與課程,是教室與課程之間的一個(gè)多對(duì)多的聯(lián)系。</p><p>  教室與校工,是教室與校工之間的一個(gè)多對(duì)多的

11、聯(lián)系。</p><p>  (2)圖書管理系統(tǒng)E-R圖模型</p><p>  圖書管理系統(tǒng)E-R圖模型如圖1所示</p><p>  圖1 圖書管理系統(tǒng)E-R圖模型</p><p>  (3)關(guān)系模式(帶下劃線的為主碼):</p><p>  1)根據(jù)E-R模型得到的關(guān)系模式為:</p><p&g

12、t;  學(xué)生(學(xué)號(hào),姓名,出生年月,班級(jí),專業(yè)名,所在系)</p><p>  校工(校工編號(hào),校工姓名,電話號(hào)碼,狀態(tài))</p><p>  教師(教師編號(hào),教師名稱,教師職稱,教師所在系)</p><p>  教室(教室編號(hào),教室容納人員,教室設(shè)備,教室位置,教室空閑時(shí)間)</p><p>  課程(課程號(hào),課程名稱,教室編號(hào))<

13、/p><p>  維修(校工編號(hào),教室編號(hào),維修記錄號(hào),維修結(jié)果)</p><p>  使用(學(xué)生號(hào),教室編號(hào))</p><p>  課程安排( 教室編號(hào),教師編號(hào),課程號(hào),周次,星期,節(jié)次)</p><p>  學(xué)習(xí)(學(xué)號(hào),課程號(hào))</p><p>  2) 表設(shè)計(jì)及表結(jié)構(gòu)</p><p>  需

14、要的表有:學(xué)生表,校工信息表,教師信息表,教室信息表,課程表,維修表,使用情況表,課程安排表,學(xué)習(xí)表。</p><p>  以下為各表的表結(jié)構(gòu):</p><p><b>  表一學(xué)生表</b></p><p><b>  表二校工信息表</b></p><p><b>  表三教師信息表&

15、lt;/b></p><p><b>  表四教室信息表</b></p><p><b>  表五課程表</b></p><p><b>  表六維修表</b></p><p><b>  表七使用表</b></p><p>

16、<b>  表八課程安排表</b></p><p><b>  表九學(xué)習(xí)表</b></p><p>  3.2用T-SQL語(yǔ)句創(chuàng)建數(shù)據(jù)庫(kù)、創(chuàng)建表以及添加數(shù)據(jù)</p><p>  (1)創(chuàng)建數(shù)據(jù)庫(kù)代碼:</p><p>  CREATE DATABASE 教室管理系統(tǒng)</p><

17、p>  ON PRIMARY</p><p>  (NAME='教室管理系統(tǒng)庫(kù)_DATA',</p><p>  FILENAME='D:\DATA\教室管理系統(tǒng)庫(kù)_DATA.MDF',</p><p><b>  SIZE=5MB,</b></p><p>  MAXSIZE=20

18、MB,</p><p>  FILEGROWTH=20%)</p><p><b>  LOG ON</b></p><p>  (NAME='教室管理系統(tǒng)庫(kù)_LOG',</p><p>  FILENAME='D:\DATA\教室管理系統(tǒng)庫(kù)_LOG.LDF',</p>&l

19、t;p><b>  SIZE=5MB,</b></p><p>  MAXSIZE=10MB,</p><p>  FILEGROWTH=2MB)</p><p><b>  (2)創(chuàng)建表代碼:</b></p><p>  use 教室管理系統(tǒng) </p><p><

20、;b>  go</b></p><p>  create table 學(xué)生表</p><p>  (sno char(8) not null primary key,</p><p>  sname char(14) not null,</p><p>  age tinyint not null,</p>&

21、lt;p>  pname varchar(20),</p><p>  ClassNo char(10) not null,</p><p>  dept char(20)</p><p><b>  ) </b></p><p>  use 教室管理系統(tǒng) </p><p><b>

22、;  go</b></p><p>  create table 校工信息表</p><p>  (repairerno char(6) primary key,</p><p>  repairername char(14) not null,</p><p>  stuation char(6),</p><

23、;p>  tei char(11)</p><p><b>  )</b></p><p>  use 教室管理系統(tǒng) </p><p><b>  go</b></p><p>  create table 教師信息表</p><p>  (tno char(6) pr

24、imary key,</p><p>  tname char(14) not null,</p><p>  dept char(20),</p><p>  title char(8)</p><p><b>  ) </b></p><p>  use 教室管理系統(tǒng) </p>

25、<p><b>  go</b></p><p>  create table 教室信息表</p><p>  (roomno char(4) primary key,</p><p>  capcity int, </p><p>  device char(20),</p><p>

26、  position char(20) not null,</p><p>  freetime char(30) )</p><p>  use 教室管理系統(tǒng) </p><p><b>  go</b></p><p>  Create table 課程表</p><p>  (cno char

27、(6) not null primary key,</p><p>  cname char(10),</p><p>  roomno char(4)</p><p><b>  ) </b></p><p>  use 教室管理系統(tǒng) </p><p><b>  go</b&

28、gt;</p><p>  create table 維修表</p><p>  (repairerno char(6) not null,</p><p>  roomno char(8) not null,</p><p>  repairresult char(6) not null,</p><p>  re

29、pairrecord char(20) not null,</p><p>  constraint pk_wx primary key(repairerno ,roomno)</p><p><b>  ) </b></p><p>  use 教室管理系統(tǒng) </p><p><b>  go</b

30、></p><p>  create table 使用表</p><p>  (sno char(8) not null,</p><p>  roomno char(8) not null,</p><p>  constraint pk_sy primary key(sno,roomno)</p><p>&

31、lt;b>  )</b></p><p>  use 教室管理系統(tǒng) </p><p><b>  go</b></p><p>  create table 課程安排表</p><p>  (tno char(6) not null,</p><p>  roomno char(

32、8) not null, </p><p>  cno char(6) not null ,</p><p>  周次 char(10),</p><p>  星期 char(10),</p><p>  node char(20),</p><p>  constraint pk_ca primary key(tn

33、o,roomno,cno)</p><p><b>  )</b></p><p>  use 教室管理系統(tǒng) </p><p><b>  go</b></p><p>  create table 學(xué)習(xí)表</p><p>  (sno char(8),</p>

34、<p>  cno char(6),</p><p>  constraint pk_xx primary key(sno,cno)</p><p>  (3)添加數(shù)據(jù)代碼:</p><p>  use 教室管理系統(tǒng)</p><p><b>  go</b></p><p>  IN

35、SERT into 學(xué)生表(sno,sname, age,ClassNO,pname,dept)</p><p>  VALUES('01001001','劉玲玲','20','15級(jí)','數(shù)學(xué)','數(shù)學(xué)系'),</p><p>  ('01001002','李華'

36、;,'21','15級(jí)','數(shù)學(xué)','數(shù)學(xué)系'),</p><p>  ('01002001','李海','20','14級(jí)','計(jì)算機(jī)','計(jì)算機(jī)系')</p><p>  use 教室管理系統(tǒng)</p><p&

37、gt;<b>  go</b></p><p>  INSERT into 校工信息表(repairerno,repairername,stuation,tei)</p><p>  values('010001','張華','空閑','13312456789'),</p><p>

38、;  ('010002','趙偉','工作','13345670891')</p><p>  Use 教室管理系統(tǒng)</p><p><b>  go</b></p><p>  INSERT into 教師信息表(tno,tname,dept,title)</p>

39、<p>  VALUES('030111','張麗','數(shù)學(xué)系','教授'),</p><p>  ('030211','王國(guó)強(qiáng)','會(huì)計(jì)系','副教授')</p><p>  USE 教室管理系統(tǒng)</p><p><b&g

40、t;  go</b></p><p>  INSERT into 教室信息表(roomno,capcity, device,position,freetime)</p><p>  VALUES('0101','200','多媒體',' A樓層','16.7.2第一節(jié)課'),</p>

41、<p>  ('1201','150','化學(xué)實(shí)驗(yàn)設(shè)備','B樓層','16.7.4第二節(jié)課'),</p><p>  ('2103','100','多媒體','C樓層','16.7.5第四節(jié)課'),</p><p>  

42、('2204','100','多媒體','C樓層','16.7.7第三節(jié)課')</p><p>  Use 教室管理系統(tǒng)</p><p><b>  Go</b></p><p>  INSERT into 課程表(cno,cname,roomno)</p&g

43、t;<p>  values('01','高等數(shù)學(xué)', '0101'),</p><p>  ('02','大學(xué)英語(yǔ)','2103'),</p><p>  ('03','會(huì)計(jì)基礎(chǔ)','2104')</p><p&

44、gt;  Use 教室管理系統(tǒng)</p><p><b>  go</b></p><p>  INSERT into 維修表(repairerno,roomno,repairresult,repairrecord)</p><p>  VALUES('010001','0101','已修好',&#

45、39;6.7.5多媒體'),</p><p>  ('010002','1201','未修好','6.7.3化學(xué)實(shí)驗(yàn)設(shè)備')</p><p>  use 教室管理系統(tǒng)</p><p><b>  Go</b></p><p>  INSERT int

46、o 使用表(sno,roomno)</p><p>  values('01001002','0101'),</p><p>  ('01002001','1201')</p><p>  Use 教室管理系統(tǒng)</p><p><b>  Go</b><

47、;/p><p>  INSERT into 課程安排表(tno,roomno,cno,周次,星期,node)</p><p>  values('030111', '1201', '01','第周','星期一','第一節(jié)'),</p><p>  ('030211&#

48、39;,'1201','03','第周','星期二','第三節(jié)')</p><p>  use 教室管理系統(tǒng)</p><p><b>  Go</b></p><p>  INSERT into 學(xué)習(xí)表(sno,cno)</p><p>  

49、values('01001001','01'),</p><p>  ('01002001', '02')</p><p>  3.3默認(rèn)值約束的建立</p><p>  在校工表上,為學(xué)生年齡創(chuàng)建一個(gè)默認(rèn)值約束。代碼如下:</p><p>  USE 教室管理系統(tǒng)</p&

50、gt;<p><b>  GO</b></p><p>  ALTER TABLE 學(xué)生表</p><p>  ADD AddDate smalldatetime null</p><p>  CONSTRAINT AddDateDf</p><p>  DEFAULT getdate() </p&

51、gt;<p>  在校工表基礎(chǔ)上,刪除創(chuàng)建的默認(rèn)值約束。代碼如下:</p><p>  Use 教室管理系統(tǒng)</p><p><b>  Go</b></p><p>  ALTER TABLE 學(xué)生表</p><p>  DROP CONSTRAINT AddDateDf</p><p

52、><b>  3.4查詢功能</b></p><p>  (1)能根據(jù)教室編號(hào)查詢此教室在學(xué)校中是否存在以及此教室的容納人數(shù)、教室位置。代碼如下:</p><p>  use 教室管理系統(tǒng)</p><p>  SELECT capcity,position from 教室信息表</p><p>  WHERE r

53、oomno='0101'</p><p>  (2)學(xué)生信息查詢。輸入學(xué)號(hào)后,能查出該學(xué)生的所有信息。代碼如下:</p><p>  Use 教室管理系統(tǒng)</p><p>  SELECT * FROM 學(xué)生表</p><p>  WHERE sno='01001001'</p><p>

54、;  (3)維修查詢。查詢出所有已修好或者維修好設(shè)備的教室編號(hào)。代碼如下:</p><p>  Use 教室管理系統(tǒng)</p><p>  SELECT roomno from 維修表</p><p>  WHERE repairresult='已修好'or repairresult='未修好'</p><p

55、>  3.5視圖的設(shè)計(jì)部分</p><p>  視圖是關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)提供給用戶以多種角度觀察數(shù)據(jù)庫(kù)中數(shù)據(jù)的重要機(jī)制,是從一個(gè)或幾個(gè)表導(dǎo)出來的表,不是真實(shí)存在的基本表而是一張?zhí)摫?,其結(jié)構(gòu)和數(shù)據(jù)是建立在對(duì)表的查詢基礎(chǔ)上的。</p><p>  創(chuàng)建一個(gè)視圖,存放每個(gè)教室的roomno,position,freetime以及課程cno,cname。代碼如下:</p><

56、p>  use 教室管理系統(tǒng)</p><p><b>  go</b></p><p>  create view 教室_課程</p><p><b>  AS</b></p><p>  SELECT 教室信息表.roomno , 課程表.cno ,課程表.cname, </p&g

57、t;<p>  教室信息表.position , 教室信息表.freetime </p><p>  FROM 教室信息表 INNER JOIN</p><p>  課程表 ON 教室信息表.roomno = 課程表.roomno</p><p>  WHERE (教室信息表.roomno = '課程表.roomno')&l

58、t;/p><p>  3.7存儲(chǔ)過程創(chuàng)建部分</p><p>  存儲(chǔ)過程是SQL語(yǔ)句和可選流程控制語(yǔ)句的預(yù)編譯集合,獨(dú)立存儲(chǔ)在數(shù)據(jù)庫(kù)內(nèi)。存儲(chǔ)過程可以接受輸入?yún)?shù)、輸出參數(shù),返回單個(gè)或多個(gè)結(jié)果集以及返回值,由應(yīng)用程序通過調(diào)用執(zhí)行。</p><p>  創(chuàng)建一個(gè)存儲(chǔ)過程,它帶有一個(gè)參數(shù),用于查詢某個(gè)教室的基本信息。代碼如下:</p><p>  U

59、SE 教室管理系統(tǒng)</p><p><b>  GO</b></p><p>  CREATE PROCEDURE GetROOM @number char(4)</p><p><b>  AS</b></p><p>  SELECT * FROM 教室信息表 WHERE roomno=@num

60、ber</p><p><b>  GO</b></p><p><b>  4課程設(shè)計(jì)心得</b></p><p>  通過這次數(shù)據(jù)庫(kù)設(shè)計(jì),我深刻的感到自身的不足,也感到要做出一個(gè)好的系統(tǒng)決不是一件容易的事情,它必須要經(jīng)過詳細(xì)的調(diào)查,了解所有涉及的流程和數(shù)據(jù),考慮到各種可能出現(xiàn)的情況及處理的方法。還有建立與之相適應(yīng)的數(shù)據(jù)

61、庫(kù),要全面,還要完整,這也是很困難的。除此之外,還有很多,例如,安全性和完整性問題,對(duì)存儲(chǔ)過程的優(yōu)化以及效率等問題,這些都不是簡(jiǎn)單的就可以處理的。 </p><p>  我認(rèn)識(shí)到,在做數(shù)據(jù)庫(kù)之前,做好十分充分的準(zhǔn)備是十分的必要,也十分的重要,它綜合了SQL Server 2008 的數(shù)據(jù)庫(kù)、表、視圖、觸發(fā)器、存儲(chǔ)過程及函數(shù)的創(chuàng)建與應(yīng)用,以及數(shù)據(jù)的增、刪、改、查的簡(jiǎn)單操作,讓我真真切切地感覺要想在這個(gè)方面比較精通

62、,必須下苦功夫。</p><p><b>  參考文獻(xiàn)</b></p><p>  [1] 薩師煊 王珊.?dāng)?shù)據(jù)庫(kù)系統(tǒng)概論[M].北京:高等教育出版社,2006:16-38</p><p>  [2] 李建中.?dāng)?shù)據(jù)庫(kù)系統(tǒng)原理[M].北京:電子工業(yè)出版社,2004:22-30</p><p>  [3] 張海藩.軟件工程[M

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論