




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、階段 1.1 成績(jī)管理系統(tǒng)實(shí)體關(guān)系設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康暮鸵螅?1 )熟練掌握實(shí)體關(guān)系設(shè)計(jì)的方法。( 2 )通過需求分析結(jié)果,掌握E-R 圖。二、實(shí)驗(yàn)內(nèi)容和原理實(shí)體關(guān)系設(shè)計(jì)是在需求分析的一個(gè)環(huán)節(jié)過程, 在這一過程中產(chǎn)生E-R 圖, 該圖由實(shí)體、屬性和聯(lián)系三個(gè)要素構(gòu)成。邏輯結(jié)構(gòu)設(shè)計(jì)的任務(wù)就是把概念設(shè)計(jì)階段建立的基本E-R 圖按照選定的系統(tǒng)軟件支持的數(shù)據(jù)模型, 轉(zhuǎn)換成相應(yīng)的邏輯模型。 這種轉(zhuǎn)換要符合關(guān)系數(shù)據(jù)模型的原則。E-R 圖向關(guān)系模型轉(zhuǎn)換時(shí)要解決如何將實(shí)體和實(shí)體間的聯(lián)系轉(zhuǎn)換為關(guān)系, 并確定這些關(guān)系的屬性和碼,這種轉(zhuǎn)換一般按下面的原則進(jìn)行。( 1) 一個(gè)實(shí)體轉(zhuǎn)換為一個(gè)關(guān)系, 實(shí)體的屬性就是關(guān)系的屬性
2、, 實(shí)體的碼就是關(guān)系的碼。( 2)一個(gè)聯(lián)系也轉(zhuǎn)換為一個(gè)關(guān)系,聯(lián)系的屬性及聯(lián)系所連接的實(shí)體的碼都轉(zhuǎn)換為關(guān)系的屬性,但關(guān)系的碼會(huì)根據(jù)聯(lián)系的類型變化。三、主要儀器設(shè)備計(jì)算機(jī)一臺(tái)、 Powerdesinger 運(yùn)行環(huán)境四、操作方法與實(shí)驗(yàn)步驟在成績(jī)管理系統(tǒng)中,需要管理學(xué)生、課程和成績(jī),以及它們之間的聯(lián)系。 因此在該系統(tǒng)的 E-R 圖中,實(shí)體分別為學(xué)生、老師、課程。為了便于掌握,學(xué)生實(shí)體的屬性分別有學(xué)號(hào)、姓名、性別;課程實(shí)體的屬性有課程編號(hào)、課程名稱、學(xué)期、課程學(xué)分;教師實(shí)體的屬性有教師編號(hào)、 姓名、 性別。 學(xué)生實(shí)體與課程實(shí)體有選課關(guān)系, 而且一個(gè)學(xué)生可以選擇多門課程,一門課程也可以被多個(gè)學(xué)生選擇,因此
3、學(xué)生和課程之間的聯(lián)系是m:n 聯(lián)系。教師實(shí)體與課程實(shí)體有教授關(guān)系, 一名教師可以教多門課程, 一門課程也可以被多個(gè)教師教授, 因此教師和課程之間的聯(lián)系是m:n 聯(lián)系。學(xué)生在選課后會(huì)產(chǎn)生成績(jī),教師授課后會(huì)產(chǎn)生授課地點(diǎn)及 授課學(xué)期。根據(jù)上述分析,繪出的 E-R 圖如下圖所示。階段1.2成績(jī)管理系統(tǒng)結(jié)構(gòu)設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康暮鸵? .了解數(shù)據(jù)庫(kù)中列的屬性以及各個(gè)屬性的含義。2 .掌握為不同的列選擇不同的屬性及范圍。二、實(shí)驗(yàn)內(nèi)容和原理在管理信息系統(tǒng)中,物理結(jié)構(gòu)設(shè)計(jì)主要是指如何將通過邏輯結(jié)構(gòu)設(shè)計(jì)所得的系統(tǒng)邏輯結(jié)構(gòu)型轉(zhuǎn)換為物理模型,并明確地指出系統(tǒng)的物理存儲(chǔ)結(jié)構(gòu)。本實(shí)驗(yàn)主要是利用CASE工具集PowerDes
4、igner對(duì)成績(jī)管理系統(tǒng)進(jìn)行物理結(jié)構(gòu)的設(shè)計(jì)。三、主要儀器設(shè)備計(jì)算機(jī)一臺(tái)、Powerdesinger運(yùn)行環(huán)境、Oracle運(yùn)行環(huán)境四、操作方法與實(shí)驗(yàn)步驟在物理結(jié)構(gòu)設(shè)計(jì)中需要考慮為每列設(shè)計(jì)合適的數(shù)據(jù)類型。成績(jī)管理系統(tǒng)中,學(xué)生(學(xué)號(hào)、姓名、性別)關(guān)系里,學(xué)號(hào)采用int來表示就可以了,而姓名設(shè)置成 varchar2(20),性別只需要設(shè)置為char (2)。因?yàn)樾詣e不是男就是女,因此只會(huì)占用兩個(gè)字節(jié)。所以最終我們可以將其物理表結(jié)構(gòu)設(shè)置為:t_student(stuid int, stuname varchar2(20),sex char (2)。依照上述,課程的物理表結(jié)構(gòu)為:t_course(coui
5、d int, couname varchar2(20), term char (2), credit number(3,1)。教師的物理存儲(chǔ)表結(jié)構(gòu)為: t_teacher(teaid int, teaname varchar2(20),sex char(2)。選課的物理表結(jié)構(gòu)為:t_selcour(sid int , cid int, score number . (4,2)。教課的物理表結(jié)構(gòu)為:t_teacour(tid int , cid int , teaaddr varchar2(30), term char (2)。(1)通過手動(dòng)編寫SQL語句方式建立數(shù)據(jù)庫(kù)后臺(tái)ra =5?三:C:w
6、indowssystem32,cmd.exe - sqlplus /nologWindows_IE 版.本 6 .工21< 匚) 2 009 M ic:i*i>sniF 1t Coijpo ion o.aQ : 71aw XjA rlvnixn i五七 W'c Az cv 尸與"【X1 lu.£ ,口<> l ooSQLxPlus =1M_2_O.1L-。 - PlciIu 匚上五口 m on 星期一 "月 2R 1A = 57 = 03 X01-4Guji* 片上gh 上 <£ > X9 82 , 2005,
7、 Or-dC l.«± « All ir sSQL> <£on 1 eye/Idni 6M 名 ilLm已連接。SQL> <z ie> ait: & law 心片 u5 :LHanl:文整 zLedl b» 8”。2 d.<cf kU 1V V aJb«±c & v<xc c t;l ;用戶已創(chuàng)建c&QL> conn 七。a命ERROR=ORA =101 017 3 xn v a 1 id uwoirrimEQ,is4w W3ni*d ; logron
8、den ic d警告:您不再連接到 OFtfiCLE先QL G«inn ±y 五as: wy尋dhe己連接&QL> e: x-k-a t e a1o1>e ±_s t u.idlen't <3 8 tu i-d ±n1; n oC n uill ui* imai-y Ro4 stun d.irma± d1HBi'RidkN20.MH* 亡 hmirfZ)手表己創(chuàng)建.SQL> .上述創(chuàng)建了代表學(xué)生實(shí)體的表t_student ,其中stuid設(shè)置為主鍵,唯一標(biāo) 識(shí)一個(gè)學(xué)生。SQL create tab
9、le t_co«pse<2 couid Int not: null primary key,3 couname "archar2420. term chai*42>4 credit numbei*<3,1 >> :表已創(chuàng)建。當(dāng)課程表t_course用來代表課程實(shí)體,其中采用 couid來標(biāo)識(shí)一門課程。 名稱的長(zhǎng)度大于20個(gè)字符時(shí),varchar2可以自動(dòng)擴(kuò)展。SQL> 2 3Create table t_teachEi"( teaid int not null prinary key, teaname uapciav2<2
10、0>,&ex chav<2>>;袤已創(chuàng)建“GCl" S.物理實(shí)體在物理結(jié)構(gòu)中用t_teacherS來表示,teaid用來唯一標(biāo)識(shí)一位教師, 因此其不能空選課表t_selcour中學(xué)生編號(hào)參考t_student表中的stuid,止匕時(shí)sid為外鍵, 課程編號(hào)cid也作為外鍵參考t_course中的couid通過PowerDesigner建立數(shù)據(jù)庫(kù)后臺(tái)第四步:至恥匕,系統(tǒng)的概念模型就全部設(shè)計(jì)好了。接下來單擊菜單“工具”一 “生成物理屬性模型”選項(xiàng),就會(huì)彈出“物理數(shù)據(jù)模型生成選項(xiàng)”對(duì)話框,如 下圖:t_tearDuyVu-athlE ifhu-iititix
11、-F (3©)t-raChara:匚tihJE (2Q汽在“常規(guī)”選項(xiàng)卡中選擇“生成新的物理模型”單選鈕,并選擇 DBMS 為 “OPACLE Version 10g”,“名稱”文本 “ MyPhysicalDataModel”,并單擊“確 認(rèn)”按鈕,在彈出得到路徑選擇對(duì)話框中輸入你想要放置生成的物理數(shù)據(jù)模型文 件的位置,系統(tǒng)就會(huì)自動(dòng)在指定的路徑下生成一個(gè)名為 “MyPhysicalDataModal.pdm”的文件,并生成系統(tǒng)的物理模型,如下圖CONGC從菜單中選擇 Database -Generate Database項(xiàng)。PowerDesigner將會(huì)在 指定的路徑下生成一個(gè)名字
12、為Y E.gwaATH3ApH53WCfdn的crwlier!蟠附I.ChacKMol A Geng同on RbvbtsSVII .sql的文本文件。里面存放可供Oracle執(zhí)行的用 來建立數(shù)據(jù)庫(kù)實(shí)體的SQL語句。E_XEU±IC1L:uxh«rEV1 I irrif&L<kJ二士EH加i W二地R如1TB.VCI QM? R.號(hào)Lia 1co工亡!談.J茫!湖.階段1.3成績(jī)管路系統(tǒng)存儲(chǔ)過程設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康暮鸵螅╥)了解存儲(chǔ)過程的設(shè)計(jì)目的以及方法。(2)掌握存儲(chǔ)過程的創(chuàng)建。二、實(shí)驗(yàn)內(nèi)容和原理存儲(chǔ)過程是在數(shù)據(jù)中定義的程序塊,它存放在數(shù)據(jù)庫(kù)服務(wù)端數(shù)據(jù)字典里。采
13、用存儲(chǔ)過程可以提高過程代碼程序的執(zhí)行速度和代碼共享度。 具體有以下幾個(gè)特點(diǎn)。(1)過程存放在服務(wù)器 端,減少了網(wǎng)絡(luò)傳輸?shù)难訒r(shí),提高了速度。(2)過程在執(zhí)行一次之后,會(huì)駐留內(nèi)存,后續(xù)的執(zhí)行無需再經(jīng)編譯過程,提高了執(zhí)行效率。三、主要儀器設(shè)備計(jì)算機(jī)一臺(tái),Oracle運(yùn)行環(huán)境四、操作方法與實(shí)驗(yàn)步驟1、創(chuàng)建存儲(chǔ)過程先向表 t_student中插入數(shù)據(jù),具體如下所示卜告;創(chuàng)建的過程帶有編譯錯(cuò)誤,SQL> ed已寫入 f ile aF iedt _buf1 create or replace procedure p_insert_student(2 id t_student *stuidZCype F
14、t.student3 &ex t_student-Sextype)4 is5 besfln6 insert into t_student7 ualuesdd name, sex>8* end;SQL> z過程已創(chuàng)建,SQL> .2、每次向表t_student中插入數(shù)據(jù)時(shí),只需要運(yùn)行該過程就可以了。具體如下所 示。表t_student中的列stuid被設(shè)置為主鍵,因此不可以存在重復(fù)值。在第二次 運(yùn)行時(shí),因?yàn)檩斎氲牡谝粋€(gè)參數(shù)id與表中已存在的數(shù)據(jù)相同,所以插入時(shí)出現(xiàn) 錯(cuò)誤。SQLexec p_insert_studcnt<1PL/SQL過程已成功完成。SQLexec
15、 g后i*t-StudentqIMan男');BEGIN p_insert_student(l,* HanJ J > ; END;第i行出現(xiàn)錯(cuò)誤工ORA-00001 :違反唯一約束條件 <S?S,SYS_G00516?>ORA-06512: 茬 "SVS -P_I MS ERI .STUDENT*, line 6ORfl-06512 在 1工11后 1£QL> select = £1*01t student ;STU1D STUNAME1 Tai3、繼續(xù)向表中插入兩條記錄,其中當(dāng)參數(shù) id不重復(fù)時(shí),過程成功完成。SQL> ex
16、ec p_insert_student<2,*Guo*;BEGIN jp_insext_Student <2/Gw''男');END;i 1行出現(xiàn)錯(cuò)誤:。麗-00001:違反唯一約束條件(S¥S.SY£_C005163)ORA-06512:在 "SVS-P.INSERT.STUDENT", line 6ORA-06512 -在 line 1SQL> exec p_inw”t_stud£nt女';PL/SQL過程已成功完成©也可以通過一般的SQL語句向表中4、不僅可以通過存儲(chǔ)過程向表中插
17、入數(shù)據(jù), 插入數(shù)據(jù),如下所示。工 SQL> insert into t_teacher2 ”hwUfciang*女>;:已創(chuàng)建1行.- SQL> insert into t_teacher二 2 ualueQqiang,/男,) ;«已創(chuàng)建1行,- SQL> insert into t_coui'se?2 uailuEsS編譯原理,一事5.0;;已創(chuàng)建1行. SQL> insert into t.course*2 ”息in二u形妙與政譙二,m.s;insert into t_course5、向表中插入數(shù)據(jù)時(shí),需要注意數(shù)據(jù)類型以及長(zhǎng)度都需要與表中定
18、義的相符,否則會(huì)出現(xiàn)錯(cuò)誤,具體如下所示。SQL> insert into C_coursie2 vaUuta計(jì)算機(jī)網(wǎng)紛第三學(xué)期.湎;«*l«es<3/計(jì)算機(jī)網(wǎng)絡(luò),第三學(xué)翳,S.5>*熟-疑崎喙赳£"JT_8UBSE”.“TERM”的值太大實(shí)際值:最大值:2>6、t_course表中列term被定義為char且長(zhǎng)度為2,因此在插入數(shù)據(jù)時(shí)該列最大長(zhǎng)度為2,超過該值會(huì)出現(xiàn)錯(cuò)誤。課程表中只有已經(jīng)存在的課程編號(hào)才能被插入到選課表中,否則會(huì)出錯(cuò),這樣就保證了數(shù)據(jù)的一致性。SQL> inseat into t_selcouF2 ualui
19、Bs Cl jp 1 a B5 -5 > «已創(chuàng)建1行.*QL> insert into t_selcouF 2 va1ucs(1,3,6 6 >iinsert; into Icoup第1行出現(xiàn)錯(cuò)送二0BA-B2291:違反完整約束條件<S¥£.S¥S.C00517B> -未找到父項(xiàng)關(guān)鍵字S«L>7、t_selcour表的另外一個(gè)外鍵為第一列sid,在插入時(shí)只有當(dāng)該值存在于學(xué)生表中的學(xué)生編號(hào)時(shí),才能被成功插入,否則也會(huì)出現(xiàn)錯(cuò)誤,具體如下所示。SQL> insert into tBselcaur2 val
20、ues <1,268);已創(chuàng)建1行SQL insert into t_selcour2 values <41 .76 > ; insert into Icouv第1行出現(xiàn)錯(cuò)法一-dORfi-02291:違反完整約束條件小YE.SYLC的51幻) -未找到父項(xiàng)關(guān)鍵字SQL>8、對(duì)于向表t_teacour中插入數(shù)據(jù)時(shí),同樣需要滿足外鍵參考主鍵的約束條件,具體如下所示。SQL> inseFt into- t_teacour2 valULes<l,l, F太原理工南區(qū)主2日4, J 已創(chuàng)建1行.9、向表t_teacour中插入一行記錄,其中tid存在于表t_teac
21、her的列teaid中,cid存在于表t_course列couid中。如果插入的值不符合外鍵約束條件,會(huì)出現(xiàn)錯(cuò)誤,具體如下所示SQL insert intot_七已占cdu產(chǎn)2 alues<3,2.J太原理工南區(qū)主如4,二,: insert into teacour第1行出現(xiàn) ORA-02291:番完整約束條件<EV8.SVS_G00S172> -未找到父項(xiàng)關(guān)鍵字10、在完成對(duì)表插入值后,可以關(guān)聯(lián)表查詢記錄。比如:查詢教師編號(hào)為1的教師所帶的課程編號(hào)、教師姓名、課程名稱、課程學(xué)分信息,具體如下所示。實(shí)現(xiàn) 了查詢編號(hào)為1的老師所帶的課程編號(hào)、課程名稱等信息。在查詢時(shí),為表命名 別名時(shí)為了方便,各個(gè)表的連接通過主鍵外鍵約束來實(shí)現(xiàn)。SQL> select cid teaname, counane, credit 2 from t_teaether a, t_pouj*se b, t_iteacher c 3a.tId 1 and a.eld b.couid and c*tid c .teaid;where a.tid = 1 a.nd 值.cid =and c.tid = c .teaid第?行出現(xiàn)錯(cuò)誤,*DRA-flB9B4: 11 J*TIDH:標(biāo)識(shí)符無效SQL> selec
溫馨提示
- 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. 人人文庫(kù)網(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è)學(xué)院《SOC設(shè)計(jì)基礎(chǔ)》2023-2024學(xué)年第二學(xué)期期末試卷
- 東營(yíng)職業(yè)學(xué)院《影視特效與合成》2023-2024學(xué)年第二學(xué)期期末試卷
- 江蘇食品藥品職業(yè)技術(shù)學(xué)院《城市數(shù)字化管理》2023-2024學(xué)年第二學(xué)期期末試卷
- 淮陰工學(xué)院《建筑設(shè)計(jì)原理及設(shè)計(jì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 達(dá)州職業(yè)技術(shù)學(xué)院《舞臺(tái)化妝與造型Ⅰ》2023-2024學(xué)年第二學(xué)期期末試卷
- 2024年起動(dòng)腳蹬桿投資申請(qǐng)報(bào)告代可行性研究報(bào)告
- 算法分析與設(shè)計(jì):冒泡排序
- 2025年貴陽中國(guó)電建集團(tuán)勘測(cè)設(shè)計(jì)研究院有限公司招聘筆試參考題庫(kù)含答案解析
- 2025年浙江臺(tái)州市基礎(chǔ)設(shè)施建設(shè)投資集團(tuán)有限公司招聘筆試參考題庫(kù)含答案解析
- 2025年浙江紹興諸暨市新城投資開發(fā)集團(tuán)有限公司招聘筆試參考題庫(kù)含答案解析
- 升壓站設(shè)備基礎(chǔ)施工方案
- 12SS508《混凝土模塊式室外給水管道附屬構(gòu)筑物》
- 23J916-1:住宅排氣道(一)
- 高中物理知識(shí)點(diǎn)清單(非常詳細(xì))
- 人機(jī)料法環(huán)測(cè)檢查表
- 2022小學(xué)勞動(dòng)課程標(biāo)準(zhǔn)電子版
- 物料采購(gòu)結(jié)算單
- 汽煤柴油加氫裝置操作工(技師)考試復(fù)習(xí)題庫(kù)寶典(含答案)
- 從業(yè)人員健康及衛(wèi)生管理制度
- 不退押金起訴材料范本
評(píng)論
0/150
提交評(píng)論