




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上數(shù)據(jù)庫課程設(shè)計(jì)題庫管理系統(tǒng)1 需求分析學(xué)校的題庫管理系統(tǒng)l 實(shí)現(xiàn)課程、題型等基本信息的管理;l 能管理每一門課程的題型,每門課程的章節(jié);l 實(shí)現(xiàn)習(xí)題信息的管理,能按題型或章節(jié)錄入每門課程的習(xí)題;l 定義存儲(chǔ)過程查詢指定課程各種題型和各章節(jié)的習(xí)題數(shù)量;l 定義視圖查詢各門課程使用的題型;l 設(shè)每個(gè)習(xí)題有一個(gè)題號(hào),題號(hào)由系統(tǒng)自動(dòng)生成,要求從1開設(shè)編號(hào);l 設(shè)每個(gè)習(xí)題都有習(xí)題的建立日期,其值為系統(tǒng)時(shí)間,請(qǐng)定義實(shí)現(xiàn)(用默認(rèn)實(shí)現(xiàn));l 定義存儲(chǔ)過程實(shí)現(xiàn)查詢各門課程、各種題型的習(xí)題數(shù)量;l 可以自動(dòng)抽題組成套題,習(xí)題每抽取一次,要使習(xí)題的抽取次數(shù)加1(用觸發(fā)器實(shí)現(xiàn));l 建立數(shù)據(jù)
2、庫相關(guān)表之間的參照完整性約束。2 任務(wù)概述2.1、數(shù)據(jù)字典數(shù)據(jù)結(jié)構(gòu):學(xué)生組 成:學(xué)號(hào),姓名,性別,系別說 明:學(xué)生表所存放的是學(xué)生的信息,學(xué)號(hào)為學(xué)生的用戶名,是唯一的,設(shè)為主碼。數(shù)據(jù)結(jié)構(gòu):任課老師組 成:職工號(hào),姓名,性別,系別說 明:任課老師表所存放的是任課老師的信息,職工號(hào)為任課老師的用戶名,是唯一的,設(shè)為主碼。數(shù)據(jù)結(jié)構(gòu):課程組 成:課程名,課程號(hào),章節(jié)號(hào)說 明:課程表存放課程的相關(guān)信息,課程號(hào)是課程的唯一標(biāo)識(shí),設(shè)為主碼。數(shù)據(jù)結(jié)構(gòu):授課組 成:課程號(hào),教師號(hào),學(xué)號(hào) 說 明:授課表存放任課老師和學(xué)生之間的授課關(guān)系。課程號(hào),教師號(hào)和學(xué)號(hào)屬性組是授課表的唯一標(biāo)識(shí),設(shè)為主碼。數(shù)據(jù)結(jié)構(gòu):測驗(yàn)卷組 成
3、:試卷號(hào),試卷名,課程號(hào),題量,測試時(shí)間,難度說 明:測驗(yàn)卷的詳細(xì)信息填入此表中。試卷號(hào)存放的是對(duì)測驗(yàn)卷一個(gè)編號(hào),課程號(hào)是課程科目的編碼,試卷號(hào)和課程號(hào)的屬性組被設(shè)為主碼;試卷名存放的是測驗(yàn)卷的主題名;題目內(nèi)容存放每一題內(nèi)容,與習(xí)題庫發(fā)生聯(lián)系;題量存放的是測驗(yàn)卷一共有多少題目。數(shù)據(jù)結(jié)構(gòu):課程習(xí)題組 成:課程號(hào),章節(jié)號(hào),建立日期,難度,題號(hào),答案說 明:課程習(xí)題的詳細(xì)內(nèi)容存放在此表中。課程代號(hào)存放的是課程科目的編碼;章節(jié)號(hào)存放的是對(duì)章節(jié)的編號(hào);建立日期存放的是習(xí)題的上傳日期;難度存放的是每一題的難度系數(shù);題號(hào)存放的是每一道題的題目編號(hào);課程代號(hào),章節(jié)號(hào),難度和題號(hào)的屬性組設(shè)為主碼。數(shù)據(jù)結(jié)構(gòu):選擇
4、 組 成:試卷號(hào),課程號(hào),題目內(nèi)容說 明:選擇表存放的是測驗(yàn)卷和課程習(xí)題之間的聯(lián)系。試卷號(hào)和課程號(hào)是選擇表的唯一標(biāo)識(shí),設(shè)為主碼。數(shù)據(jù)結(jié)構(gòu):解答 組 成:課程號(hào),試卷號(hào),學(xué)號(hào),記錄號(hào),成績說 明:解答表存放的是學(xué)生解答測驗(yàn)卷的相關(guān)信息。課程號(hào)、試卷號(hào)和學(xué)號(hào)可以唯一標(biāo)識(shí)解答信息,設(shè)為主碼;記錄號(hào)存放學(xué)生解答測驗(yàn)卷的次數(shù);成績存放每次學(xué)生測驗(yàn)的成績。數(shù)據(jù)結(jié)構(gòu):題型組 成:題名,題號(hào),類別名說 明:題型表存放的是學(xué)生所做的習(xí)題的相關(guān)信息。題號(hào)可以作為唯一標(biāo)識(shí)解答信息,設(shè)為主碼。專心-專注-專業(yè)3 數(shù)據(jù)庫概念設(shè)計(jì)3.1、局部概念模式設(shè)計(jì) 在系統(tǒng)界定范圍內(nèi),將靜態(tài)數(shù)據(jù)對(duì)象或邏輯上具有獨(dú)立意義的概念抽象為實(shí)
5、體集,如學(xué)生、任課教師、課程負(fù)責(zé)人、測驗(yàn)卷、課程習(xí)題、課程等。從數(shù)據(jù)字典的角度來看,可將數(shù)據(jù)源點(diǎn)和數(shù)據(jù)結(jié)構(gòu)作為實(shí)體集,而把數(shù)據(jù)處理抽象為實(shí)體間的聯(lián)系。3.1.1實(shí)體集的屬性:任課教師性別姓名學(xué)號(hào)系別學(xué)生 性別系別姓名職工號(hào)號(hào)課程時(shí)間難度測驗(yàn)時(shí)間題量試卷名試卷號(hào) 測驗(yàn)卷 課程習(xí)題答案題號(hào)難度知識(shí)點(diǎn)章號(hào)課程號(hào)節(jié)號(hào)節(jié)號(hào)課程名章號(hào)課程號(hào)課程3.1.2、E-R圖表示數(shù)據(jù)庫的概念結(jié)構(gòu)下圖為課程責(zé)任人、任課教師、學(xué)生、課程、課程習(xí)題、測試卷實(shí)體集之間的關(guān)系E-R圖M職工號(hào)姓名性別系別任課老師設(shè)定測試卷試卷號(hào)課程名試卷名題量測試時(shí)間難度1 任課老師和測試卷的E-R圖節(jié)號(hào)姓名性別系別任課老師教授課程課程號(hào)章號(hào)職
6、工號(hào)課程名1M 任課老師和課程的E-R圖M職工號(hào)性別姓名系別任課教師教授學(xué)生學(xué)號(hào)姓名性別系別N 任課老師和學(xué)生的E-R圖節(jié)號(hào)課程號(hào)試卷名題量測試時(shí)間難度試卷號(hào)測試卷選擇課程習(xí)題課程號(hào)章號(hào)建立日期難度題號(hào)答案MN 測試卷和課程習(xí)題的E-R圖題 量難 度測試時(shí)間課程號(hào)題量試卷號(hào)試卷名學(xué)號(hào)姓名系別姓名 解答 測試卷NM 學(xué)生 學(xué)生和測試卷的E-R圖1職工號(hào)姓名性別系別任教老師設(shè)定題型題名題號(hào)類別名M 任教老師和題型的E-R圖章內(nèi)容章名章號(hào) 章1 包含M節(jié)內(nèi)容節(jié)名節(jié)號(hào) 節(jié) 章和節(jié)的E-R圖3.2全局概念模式E-R圖節(jié)號(hào)題目內(nèi)容系別性別姓名學(xué)號(hào)難度測試時(shí)間題量課程號(hào)試卷號(hào)試卷名課程習(xí)題課程號(hào)章號(hào)建立日期
7、難度題號(hào)答案選擇測試卷設(shè)定成績解答學(xué)生任教老師教授課程職工號(hào)姓名性別系別課程號(hào)課程名設(shè)定題型題類別題號(hào)題名授課NMNMNMM1M1M1四. 數(shù)據(jù)庫邏輯設(shè)計(jì)4.1數(shù)據(jù)模型映射4.1.1 由E-R圖導(dǎo)出一般關(guān)系模型的四條原則原則1:E-R圖中的每一個(gè)獨(dú)立實(shí)體變換為一個(gè)關(guān)系,其屬性變?yōu)殛P(guān)系的屬性,其主標(biāo)識(shí)變?yōu)殛P(guān)系的主碼。原則2:E-R圖中的從實(shí)體及相應(yīng)的“的”聯(lián)系變換為一個(gè)關(guān)系,從實(shí)體的屬性加上主體關(guān)系的主碼構(gòu)成這個(gè)關(guān)系的屬性。如果“的”聯(lián)系是1:1的,則以主實(shí)體關(guān)系的主碼(作為外來碼)為這個(gè)關(guān)系的主碼;如果“的”聯(lián)系是1:M的,則以主實(shí)體關(guān)系的主碼加上同一主實(shí)體個(gè)體聯(lián)系的不同從屬實(shí)體個(gè)體賴以相互區(qū)
8、分的屬性組,組成該關(guān)系的主碼。原則3:1:M聯(lián)系通過在“多”實(shí)體關(guān)系中增加相聯(lián)系的“1”實(shí)體關(guān)系的主碼及聯(lián)系本身的屬性來表達(dá)。其中“1”實(shí)體主碼為外來碼。原則4:M:M聯(lián)系轉(zhuǎn)換成一個(gè)獨(dú)立的關(guān)系,被聯(lián)系實(shí)體關(guān)系的主碼(作為外來碼)和聯(lián)系本身的屬性作為該關(guān)系的屬性,被聯(lián)系實(shí)體關(guān)系的主碼組成其復(fù)合主碼。將數(shù)據(jù)庫概念模式映射為數(shù)據(jù)庫邏輯模式,也就是把E-R模型轉(zhuǎn)換為關(guān)系模型。既分別將每個(gè)實(shí)體集轉(zhuǎn)換為關(guān)系,再將每個(gè)聯(lián)系集也轉(zhuǎn)換為關(guān)系。將實(shí)體集映射為關(guān)系:學(xué)生(學(xué)號(hào),學(xué)生姓名),學(xué)號(hào)是主碼。授課(課程號(hào),職工號(hào),,學(xué)號(hào)),(課程號(hào),職工號(hào),學(xué)號(hào))是主碼。任課教師(職工號(hào),姓名,性別),職工號(hào)是主碼。測驗(yàn)卷
9、(試卷號(hào),試卷名,課程號(hào),題量,測試時(shí)間,難度),(試卷號(hào),試卷名,課程號(hào))是主碼。課程習(xí)題(課程號(hào),章號(hào),節(jié)號(hào),建立日期,難度,題號(hào),題目內(nèi)容,答案),(課程代號(hào),章號(hào),節(jié)號(hào),建立日期,難度,題號(hào))是主碼。選擇(試卷號(hào),課程號(hào),題目內(nèi)容),(試卷號(hào),課程號(hào))是主碼。解答(課程號(hào),試卷號(hào),學(xué)號(hào),記錄號(hào),成績),(課程號(hào),試卷號(hào),學(xué)號(hào),記錄號(hào))是主碼。題型(題名,題號(hào),題類別),(題名,題號(hào))是主碼。章(章號(hào),章名,章內(nèi)容),(章號(hào))是主碼。節(jié)(節(jié)號(hào),節(jié)名,節(jié)內(nèi)容),(節(jié)號(hào))是主碼包含(章號(hào),節(jié)號(hào)),(章號(hào),節(jié)號(hào))是主碼。4.2建立數(shù)據(jù)庫題庫管理系統(tǒng)的數(shù)據(jù)庫表的結(jié)構(gòu)說明表名學(xué)生信息(SB)屬性名
10、別名類型長度是否為空說明學(xué)號(hào)Snochar12主碼姓名Snamechar10性別Sexchar2系別Sdeptchar10表名授課信息(SK)屬性名別名類型長度是否為空說明課程號(hào)Cnochar10主碼職工號(hào)Zgnochar10學(xué)號(hào)Snochar10表名任課教師信息(RKJS)屬性名別名類型長度是否為空說明職工號(hào)Zgnochar10主碼姓名Znamechar10性別Sexchar2系別Sdeptchar10表名課程習(xí)題信息(KCXT)屬性名別名類型長度是否為空說明課程號(hào)Cnochar10主碼章節(jié)號(hào)Znochar10建立日期Jrdatetime難度Ndchar10題號(hào)Tnochar10題目內(nèi)容Tn
11、varchar50答案Ansvarchar50表名選擇信息(XD)屬性名別名類型長度是否為空說明試卷號(hào)Sjnochar10主碼課程號(hào)Cnochar10試卷內(nèi)容Snrvarchar2000表名解答信息(JD)屬性名別名類型長度是否為空說明課程號(hào)Cnochar10主碼試卷號(hào)Sjnochar10學(xué)號(hào)Snochar12成績Gradeint3表名題型信息(TD)屬性名別名類型長度是否為空說明題號(hào)Tnochar10主碼題名Tnamechar10題類別Tlbchar6表名測驗(yàn)卷信息(CYJ)屬性名別名類型長度是否為空說明試卷號(hào)SJnochar10主碼課程號(hào)Cnochar10試卷名SJnamechar2題量T
12、1int2測試時(shí)間Ttimechar10難度Ndchar10表名題型信息(TX)屬性名別名類型長度是否為空說明題號(hào)TXnochar10主碼題名TXnamevarchar50類別名LBMchar20五物理設(shè)計(jì)5.1建立數(shù)據(jù)庫 create database 題庫管理5.2建表1.學(xué)生表create table SB (Sno char(10) primary key, Sname char(10), Sex char(2), Sdept char(10), ) 2.任課老師create table RKJS (Tno char(10) primary key, Tname char(10), S
13、ex char(2), Sdept char(10) ) 3.課程表create table Kc (kcno char(10), primary key, kname char(10), kzhang char(10), )4.課程習(xí)題表create table KCXT ( Cno char(10), Zno char(10),Jr datetime,Nd char(10), Tno int identity(1,1),Tn varchar(50),Answer char(50), primary key (Cno,Zno,Nd,Jr,Tno), foreign key(KCno) ref
14、erences KC(KCno) ) 5測試卷表create table CYJ ( SJno char(10), Cno char(10), SJname char(10), Tl char(2), Ttime char(10), Nd char(10), primary key(SJno,Cno,SJname), foreign key(KCno) references KC(KCno) ) 6授課表create table SK (kcno char(10), Tno char(10), Sno char(10), primary key(kcno,Tno,Sno), foreign k
15、ey (kcno) references KC(kcno), foreign key (Tno) references RKJS(Tno) , foreign key (Sno) references SB(Sno) ) 7.選擇表create table XD( SJno char(10), Kcno char(10), Tmnr char(20), primary key(SJno,Cno,), foreign key (Kcno) references KC(Kcno) ) 8.解答表create table JD ( Kcno char(10), SJno char(10), Sno
16、char(10), Grade char(4), primary key (Kcno,SJno,Sno,JLno), foreign key (Kcno) references KC(Kcno), foreign key (Sno) references SB(Sno) ) 9.題型create table TX(TXno char(10) primary key,TXname varchar(50),LBM char(20)5.3建立索引和進(jìn)行數(shù)據(jù)操作create index index_SB on SB(Sno); create index index_RKJS on RKJS(Zgno)
17、; create index unique index_CYJ on CYJ( SJno, Cno,SJname);查詢學(xué)生成績:select Grade from JD where Cno=1 and Sjno= and Sno=0 and Jlno=1 查詢題目的答案:select Ans from KCXT where Cno=1 and Zno=第一章and Zsddh=1 and Nd=簡單and Tno=1 查詢測驗(yàn)卷:select * from CYJ,KCXT where CYJ.Cno=KCXT.Cno and SJno= and Cno=1 and SJname=第一次測卷
18、and Ttime=5.4定義存儲(chǔ)過程5.4.1查詢指定課程各種題型create procedure findType Tno char(10) Tname char(10) Tlb char(6) as select Tno=Tno,Tname=Tname,Tlb=Tlb from TD declare Tno Tname Tlb5.4.2查詢各章節(jié)的習(xí)題數(shù)量create procedure findNum Cno char(10) Zno char(10) as begin if(select count(*) from SK where Cno=Cno)>0 begin if(se
19、lect count(*) from KCXT where Cno=Cno and Zno=Zno)>0 select count(Zno) from SK,KCXT where Cno=Cno and Zno=Zno and SK.Cno=KCXT.Cno else print'章節(jié)號(hào)'+Zno'不存在' end else print'課程號(hào)'+Cno+'不存在' end5.5創(chuàng)建視圖及查詢 create view txasselect Cno,Tno,Tname,Tlbfrom KCXT,TDwhere KCXT.Tno
20、=TD.Tnoselect*from txwhere Cno=15.7每個(gè)習(xí)題都有習(xí)題的建立日期,其值為系統(tǒng)時(shí)間習(xí)題增加建立日期insert into KCXTvalues(03,01,GETDATE(),'簡單','1+1','2')5.8觸發(fā)器可以自動(dòng)抽題組成套題,習(xí)題每抽取一次,要使習(xí)題的抽取次數(shù)加1(用觸發(fā)器實(shí)現(xiàn));抽題屬于select操作,沒有對(duì)應(yīng)的觸發(fā)器,所以可以建立一個(gè)表記錄抽取的套題,利用這個(gè)表的insert觸發(fā)器更新習(xí)題庫表中習(xí)題被抽取的次數(shù)。觸發(fā)器:所有的習(xí)題存放在表XTbank(num,XT)中,(num)為抽取的題號(hào),XT
21、為(num)抽取的題型,被抽取的習(xí)題存放在表new XTbank(nums)中Create trigger addXTbankOn newXTbankFor insertAs Begin transaction /開始檢查Update XTbankSet XT=XT+1Where num in(selset nums From inserted)Commit transaction /執(zhí)行Go 5.9參照完整性約束5.9.1添加唯一值約束alter table SBadd constraint un_Sno unique(Sno);alter table RKJSadd constraint
22、un_Zgno unique(Zgno);alter table KCXTadd constraint un_Cno unique(Cno);alter table CYJadd constraint un_Sjno unique(Sjno);5.9.2添加主鍵約束alter table SBadd constraint pk_SB primary key(Sno)alter table SKadd constraint pk_SK primary key(Cno)alter table RKJSadd constraint pk_RKJS primary key(Sno,Cno)alter
23、table KCXTadd constraint pk_KCXT primary key(Cno,Zno)alter table TDadd constraint pk_TD primary key(Tno)alter table CYJadd constraint pk_CYJ primary key(Sjno,Cno)5.9.3添加外鍵約束alter table SKadd constraint fk_Sno foreign key (Sno) references SB(Sno);alter table SKadd constraint fk_Cno foreign key (Cno)
24、references KCXT(Cno);alter table SKadd constraint fk_Zgno foreign key (Zgno) referencesRKJS(Zgno);alter table XDadd constraint fk_Sjno foreign key (Sjno) references CYJ(Sjno);alter table XDadd constraint fk_Cno foreign key (Cno) references KCXT(Cno);alter table JDadd constraint fk_Cno foreign key Cn
25、o) references KCXT(Cno);alter table JDadd constraint fk_Sjno foreign key (Sjno) references CYJ(Sjno);alter table JDadd constraint fk_Sno foreign key (Sno) references SB(Sno);5.9.4為屬性添加范圍約束alter table SBadd cconstraint ck_Sex check(Sex=男);alter table RKJSadd cconstraint ck_Sdept check(Sdept=數(shù)學(xué)系);alter table KCXTadd cconstraint ck_Nd check(Nd=難);5.9.5為屬性添加集合約束alter table SBadd cconstraint ck_Sex check(Sex in
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 碼頭貨物運(yùn)輸合同
- 工程熱力學(xué)模擬試答題
- 企業(yè)內(nèi)部年度財(cái)務(wù)分析報(bào)告
- 寓言故事烏鴉喝水的啟示讀后感
- 企業(yè)知識(shí)產(chǎn)權(quán)保護(hù)及維權(quán)服務(wù)協(xié)議
- 年度目標(biāo)達(dá)成報(bào)告
- 大數(shù)據(jù)挖掘在輿情監(jiān)控中的應(yīng)用實(shí)踐指南
- 如何正確使用辦公軟件提高效率
- 太陽能光伏發(fā)電系統(tǒng)安裝合同
- 人與自然紀(jì)錄片評(píng)析和諧共生的啟示
- 八年級(jí)語文上冊(cè)第六單元作業(yè)設(shè)計(jì) 品格與志趣
- 鐵道游擊隊(duì)測試題6.1總1文檔資料
- 電機(jī)與電氣控制技術(shù)(第2版)全套完整教學(xué)課件
- 掘進(jìn)機(jī)液壓培訓(xùn)課件
- 農(nóng)產(chǎn)品質(zhì)量安全風(fēng)險(xiǎn)防范措施
- 麻醉科臨床技術(shù)操作規(guī)范2022版
- 奉賢東部分區(qū)單元(FX3)地質(zhì)災(zāi)害危險(xiǎn)性評(píng)估報(bào)告
- 現(xiàn)代企業(yè)管理專業(yè)實(shí)踐考核試題
- 支氣管鏡吸痰操作考核評(píng)分標(biāo)準(zhǔn)
- 2023年病歷書寫基本規(guī)范文
- 《中小學(xué)心理健康教育指導(dǎo)綱要(2012年修訂)》
評(píng)論
0/150
提交評(píng)論