數(shù)據(jù)庫課程設(shè)計(jì)數(shù)據(jù)庫系統(tǒng)概論_第1頁
數(shù)據(jù)庫課程設(shè)計(jì)數(shù)據(jù)庫系統(tǒng)概論_第2頁
數(shù)據(jù)庫課程設(shè)計(jì)數(shù)據(jù)庫系統(tǒng)概論_第3頁
數(shù)據(jù)庫課程設(shè)計(jì)數(shù)據(jù)庫系統(tǒng)概論_第4頁
數(shù)據(jù)庫課程設(shè)計(jì)數(shù)據(jù)庫系統(tǒng)概論_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

數(shù)據(jù)庫課程設(shè)計(jì)4/33目錄實(shí)驗(yàn)?zāi)康膶?shí)驗(yàn)要求實(shí)驗(yàn)題目實(shí)驗(yàn)設(shè)計(jì)實(shí)驗(yàn)小結(jié)一、實(shí)驗(yàn)?zāi)康模杭由顚?shù)據(jù)庫系統(tǒng)、軟件工程、程序設(shè)計(jì)語言的理論知識的理解和應(yīng)用水平;在理論和實(shí)驗(yàn)教學(xué)基礎(chǔ)上進(jìn)一步鞏固已學(xué)基本理論及應(yīng)用知識并加以綜合提高;學(xué)會將知識應(yīng)用于實(shí)際的方法,提高分析和解決問題的能力,增強(qiáng)動手能力;為畢業(yè)設(shè)計(jì)和以后工作打下必要基礎(chǔ)。二、實(shí)驗(yàn)要求

運(yùn)用數(shù)據(jù)庫基本理論與應(yīng)用知識,在微機(jī)RDBMS(SQLServer)的環(huán)境上建立一個數(shù)據(jù)庫應(yīng)用系統(tǒng)。要求把現(xiàn)實(shí)世界的事物及事物之間的復(fù)雜關(guān)系抽象為信息世界的實(shí)體及實(shí)體之間聯(lián)系的信息模型,再轉(zhuǎn)換為機(jī)器世界的數(shù)據(jù)模型和數(shù)據(jù)文件,并對數(shù)據(jù)文件實(shí)施檢索、更新和控制等操作。概念設(shè)計(jì)2.邏輯設(shè)計(jì)訂戶(編號,姓名,住址);報(bào)刊目錄(代號,名稱,期刊,單價(jià));訂單(編號,代號,日期,起訂期,終定期,訂單量);投遞卡(編號,代號,期號,份量);主碼通過橫線給出。該關(guān)系屬于第一范式3.完整性設(shè)計(jì)關(guān)系主碼、外碼約束三、實(shí)驗(yàn)題目(1)創(chuàng)建數(shù)據(jù)庫的結(jié)構(gòu)

(2)創(chuàng)建各基本表的結(jié)構(gòu)

(3)編制輸入子系統(tǒng),完成數(shù)據(jù)的錄入

(4)檢索地址為“太平路4890號”的訂戶信息

(5)檢索份數(shù)多于3的期號

(6)檢索訂閱“01-01”報(bào)刊代號的訂戶名、報(bào)刊名、訂閱份數(shù)

(7)檢索沒有訂閱“人民日報(bào)”的訂戶號

(8)檢索至少訂閱“人民日報(bào)”的訂戶名

(9)檢索至少訂閱了“人民日報(bào)”的所有期號的訂戶號

(10)檢索未訂閱代號為“03-01”報(bào)刊的訂戶名

(11)檢索被多個訂戶訂閱的報(bào)刊之代號

(12)增加一種報(bào)刊“04-01,經(jīng)濟(jì)信息報(bào),周報(bào),0.5”

(13)刪去報(bào)刊代號為“01-03”的報(bào)刊

(14)把訂戶號“161213”改為“161225”

(15)把“090104”訂戶所訂的“01-03”報(bào)刊的截止日期改為12

(16)檢索訂閱期在1到12月份的各種報(bào)刊的代號和總數(shù)

(17)檢索每種報(bào)刊的訂閱總數(shù),并給出報(bào)刊代號

(18)統(tǒng)計(jì)各種報(bào)刊的訂戶數(shù)

(19)輸出如下報(bào)表:

訂戶姓名 報(bào)刊名稱 期號 日期 起訂期 終訂期 份數(shù)

(20)輸出操作結(jié)果和程序清單課程設(shè)計(jì)補(bǔ)充內(nèi)容:創(chuàng)建視圖:報(bào)刊訂閱:查詢出用戶楊春花訂閱情況(字段根據(jù)自己設(shè)計(jì)選擇即可)授權(quán)操作:請創(chuàng)建用戶YANG,并授予他可以查詢,修改第一題所建視圖的權(quán)限。觸發(fā)器操作:刪除某一個用戶的記錄時,利用觸發(fā)器實(shí)現(xiàn)級聯(lián)刪除,即刪除其他表中該用戶的相應(yīng)信息更新起訂期和終定期時,若字段值小于1或者大于12,請?zhí)崾尽皵?shù)據(jù)無效”錯誤更新用戶訂閱報(bào)刊份數(shù)時,請輸出訂閱報(bào)刊總份數(shù)大于6份的用戶姓名和訂閱數(shù)量訂單(ORDER)

訂戶號(CNO)日期(DATE)報(bào)刊代號(NMNO) 起訂期(START)終訂期(TERM)份數(shù)

(QTY)

090101 831215 01-01 01 12 1

090101 840120 03-01 04 06 2

090101 840101 62-26 01 06 1

090104 831205 01-01 01 12 5

090104 840131 01-03 02 05 2

090205 840715 01-03 09 12 1

090205 840621 03-01 07 12 2

090205 831207 13-30 01 12 1

090205 840531 58-80 07 12 1

160412 831223 01-01 01 12 1

160412 840317 01-03 04 12 2

160412 840625 03-01 07 08 1

161213 840931 01-01 11 12 2

161213 840316 62-26 04 07 1

167480 840127 01-01 02 12 2訂戶(CUSTOMER)

編號(CNO) 姓名(NAME) 住址(ADDR)

090101 單明 北京路10號

090104 楊春花 中山路4235號

090205 陳衛(wèi)星 漢府街1234號

160412 李宇 光華門路784號

161213 吳明鎮(zhèn) 鼓樓街2107號

167480 王文武 太平路4890號

報(bào)刊目錄(NMTABLE)

代號(NMNO) 名稱(TITLE) 刊期(PERIOD) 單價(jià)(PRICE)

01-01 人民日報(bào) 日報(bào) 0.067

01-03 中國日報(bào) 周六報(bào) 0.10

03-01 解放日報(bào) 日報(bào) 0.033

11-06 物價(jià)市場 半月刊 0.04

13-30 內(nèi)蒙古科技報(bào) 周報(bào) 0.03

58-80 新疆社會科學(xué) 季刊 0.60

62-20 四川中醫(yī) 月刊 0.35

投遞卡(SENDING)

訂戶號(CNO) 報(bào)刊代號(NMNO) 期號(ISSUE) 份數(shù)(QTY)

090101 01-01 2407 1

090101 03-01 134 2

090101 62-26 204 1

090104 01-01 2407 5

090104 01-03 7840 2

090205 01-03 7840 1

090205 03-01 2401 2

090205 13-30 780 1

090205 58-80 230 1

090205 58-80 231 1

160412 01-01 2407 1

160412 01-03 7840 2

160412 01-01 2408 1

160412 01-03 7841 2

161213 01-01 2407 2

161213 62-26 45 1四、實(shí)驗(yàn)設(shè)計(jì)1-1創(chuàng)建數(shù)據(jù)庫的結(jié)構(gòu)1-2創(chuàng)建各基本表的結(jié)構(gòu)在表“訂單OR1”中將“訂戶號CNO”和“報(bào)刊代號NMNO”設(shè)置為主鍵,其中“訂戶號CNO”為表“訂戶CUSTOMER”的主鍵,“報(bào)刊代號NMNO”為表“報(bào)刊目錄NMTABLE”的主鍵在表“訂戶CUSTOMER”中將“編號CNO”設(shè)置為主鍵在表“報(bào)刊目錄NMTABLE”中將“代號NMNO”設(shè)置為主鍵在表“投遞卡SENDING”中將“訂戶號CNO”和“期號ISSUE”設(shè)置為主鍵,其中“訂戶號CNO”為“訂戶CUSTOMER”的主鍵1-3編制輸入子系統(tǒng),完成數(shù)據(jù)的錄入

代碼段:INSERTINTOOR1VALUES('167480','840127','01-01',02,12,2);結(jié)果1-4檢索地址為“太平路4890號”的訂戶信息代碼段SELECT*FROMCUSTOMERWHEREADDR='太平路號';結(jié)果1-5檢索份數(shù)多于3的期號代碼段SELECTISSUEFROMSENDINGGROUPBYISSUEHAVINGSUM(QTY)>3;

結(jié)果1-6檢索訂閱“01-01”報(bào)刊代號的訂戶名、報(bào)刊名、訂閱份數(shù)代碼段SELECTNAME,TITLE,QTYFROMOR1,CUSTOMER,NMTABLEWHEREOR1.NMNO='01-01'ANDOR1.CNO=CUSTOMER.CNOANDNMTABLE.NMNO='01-01';結(jié)果1-7檢索沒有訂閱“人民日報(bào)”的訂戶號代碼段SELECTDISTINCTCNOFROMOR1WHEREOR1.CNONOTIN(SELECTDISTINCTCNOFROMNMTABLE,OR1WHERETITLE='人民日報(bào)'ANDNMTABLE.NMNO=OR1.NMNO結(jié)果1-8檢索至少訂閱“人民日報(bào)”的訂戶名代碼段SELECTNAMEFROMCUSTOMER,OR1,NMTABLEWHERENMTABLE.TITLE='人民日報(bào)'ANDOR1.NMNO=NMTABLE.NMNOANDCUSTOMER.CNO=OR1.CNO;結(jié)果1-9檢索至少訂閱了“人民日報(bào)”的所有期號的訂戶號代碼段SELECTDISTINCTS1.CNOFROMSENDINGS1WHERENOTEXISTS(SELECT*FROMSENDINGS2,NMTABLEWHERENMTABLE.TITLE='人民日報(bào)'ANDS2.NMNO=NMTABLE.NMNOANDNOTEXISTS(SELECT*FROMSENDINGS3WHERES1.CNO=S3.CNOANDS2.ISSUE=S3.ISSUE));結(jié)果1-10檢索未訂閱代號為“03-01”報(bào)刊的訂戶名

代碼段SELECTDISTINCTNAMEFROMOR1,CUSTOMERWHEREOR1.CNO=CUSTOMER.CNOANDOR1.CNONOTIN(SELECTOR2.CNOFROMOR1OR2WHEREOR2.NMNO='03-01');結(jié)果1-11檢索被多個訂戶訂閱的報(bào)刊之代號

代碼段SELECTDISTINCTNMNOFROMOR1GROUPBYNMNOHAVINGSUM(QTY)>3;結(jié)果1-12增加一種報(bào)刊“04-01,經(jīng)濟(jì)信息報(bào),周報(bào),0.5”代碼段INSERTINTONMTABLEVALUES('04-01','經(jīng)濟(jì)信息報(bào)','周報(bào)',0.5);結(jié)果1-13刪去報(bào)刊代號為“01-03”的報(bào)刊代碼段

DELETEFROMNMTABLEWHERENMTABLE.NMNO='01-03'DELETEFROMOR1WHEREOR1.NMNO='01-03'DELETEFROMSENDINGWHERESENDING.NMNO='01-03';結(jié)果1-14把訂戶號“161213”改為“161225”代碼段UPDATEOR1SETOR1.CNO='161225'WHEREOR1.CNO='161213'UPDATECUSTOMERSETCUSTOMER.CNO='161225'WHERECUSTOMER.CNO='161213'UPDATESENDINGSETSENDING.CNO='161225'WHERESENDING.CNO='161213';結(jié)果1-15把“090104”訂戶所訂的“01-03”報(bào)刊的截止日期改為12代碼段UPDATEOR1SETTERM=12WHERENMNO='01-03'ANDCNO='090104';結(jié)果

因?yàn)榍懊嬉呀?jīng)刪除過,所以0行受影響1-16檢索訂閱期在1到12月份的各種報(bào)刊的代號和總數(shù)代碼段SELECTNMNO,SUM(QTY)FROMOR1WHERESTART>=1ANDTERM<=12GROUPBYNMNO;結(jié)果

1-17檢索每種報(bào)刊的訂閱總數(shù),并給出報(bào)刊代號代碼段SELECTNMNO,SUM(QTY)FROMOR1GROUPBYNMNO;結(jié)果1-18統(tǒng)計(jì)各種報(bào)刊的訂戶數(shù)代碼段SELECTNMNO,count(CNO)FROMOR1GROUPBYNMNO;結(jié)果1-19輸出如下報(bào)表:

訂戶姓名 報(bào)刊名稱 期號 日期 起訂期 終訂期 份數(shù)代碼段SELECTCUSTOMER.NAME訂戶姓名,NMTABLE.TITLE報(bào)刊名稱,OR1.DATA日期,OR1.START起訂期,OR1.TERM終訂期,OR1.QTY份數(shù)FROMOR1,CUSTOMER,NMTABLEWHEREOR1.CNO=CUSTOMER.CNOANDOR1.NMNO=NMTABLE.NMNO;結(jié)果1-20創(chuàng)建視圖:代碼段CREATEVIEWCUS_OR1ASSELECTOR1.CNO,NAME,DATA,NMNO,START,TERM,QTYFROMOR1,CUSTOMERWHEREOR1.CNO=CUSTOMER.CNO;結(jié)果1-21查詢出用戶楊春花訂閱情況代碼段SELECT*FROMCUS_OR1WHERENAME='楊春花';結(jié)果1-22授權(quán)操作:請創(chuàng)建用戶YANG,并授予他可以查詢,修改第一題所建視圖的權(quán)限。GRANTSELECT,UPDATEONCUS_OR1TOYANG;結(jié)果1-23觸發(fā)器操作:先建外碼OR1的外碼代碼段ALTERTABLEOR1ADDCONSTRAINTPK_CNOFOREIGNKEY(CNO)REFERENCESCUSTOMER(CNO);結(jié)果代碼段ALTERTABLEOR1ADDCONSTRAINTPK_NMNOFOREIGNKEY(NMNO)REFERENCESNMTABLE(NMNO);結(jié)果SENDING的外碼代碼段ALTERTABLESENDINGADDCONSTRAINTPK_CNO2FOREIGNKEY(CNO)REFERENCESCUSTOMER(CNO);結(jié)果代碼段ALTERTABLESENDINGADDCONSTRAINTPK_NMNO2FOREIGNKEY(NMNO)REFERENCESNMTABLE(NMNO);結(jié)果1-24刪除某一個用戶的記錄時,利用觸發(fā)器實(shí)現(xiàn)級聯(lián)刪除,即刪除其他表中該用戶的相應(yīng)信息代碼段CREATETRIGGERDELECTERONCUSTOMERINSTEADOFDELETEASBEGIN DECLARE@CN1NCHAR(12); SELECT@CN1=CNO FROMDELETED; DELETE FROMOR1 WHERECNO=@CN1; DELETE FROMSENDING WHERECNO=@CN1; DELETE FROMCUSTOMER WHERECNO=@CN1;END;結(jié)果代碼段DELETEFROMCUSTOMERWHERECNO='167480';結(jié)果1-25更新起訂期和終定期時,若字段值小于1或者大于12,請?zhí)崾尽皵?shù)據(jù)無效”錯誤代碼段CREATETRIGGERUP1ONOR1AFTERUPDATEASBEGINDECLARE@SSMALLINT;SELECT@S=STARTFROMINSERTED;DECLARE@TSMALLINT;SELECT@T=TERMFROMINSERTED; IF(@S<1OR@S>12) BEGIN PRINT'輸入錯誤,請重新輸入'; ROLLBACK; END; IF(@T<1OR@T>12) BEGIN PRINT'輸入錯誤,請重新輸入'; ROLLBACK; END;END;結(jié)果代碼段UPDATEOR1SETSTART=14WHERECNO='0902

溫馨提示

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

評論

0/150

提交評論