




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、NORTH CHINA UNIVERSITY OF TECHNOLOGY數(shù)據(jù)庫(2015年春季學(xué)期)序號: 實 驗 報 告系別:班級:姓名:學(xué)號:實驗名稱: 總成績:評語: 日期:圖像信息處理實驗報告實驗名稱實驗序號實驗日期實驗人一、實驗?zāi)康?、要求與環(huán)境數(shù)據(jù)庫原理是一門理論和實踐性很強的課程。本課程要求學(xué)生不僅要掌握數(shù)據(jù)庫的基本原理,而且還要掌握一門數(shù)據(jù)庫系統(tǒng)的應(yīng)用技能。因此上機實驗是數(shù)據(jù)庫課程的重要環(huán)節(jié)。學(xué)生學(xué)習(xí)這門課程后要求掌握兩方面內(nèi)容:數(shù)據(jù)庫設(shè)計和上機實踐。本課程實驗的目的如下:1. 通過上機實驗,加深對數(shù)據(jù)庫系統(tǒng)理論知識的理解,增強對大型數(shù)據(jù)庫的感性認(rèn)識和實際操作能力;2. 通過使用
2、具體的RDBMS(如SQL Server 2005),了解一種實際的數(shù)據(jù)庫管理系統(tǒng),并掌握其操作技術(shù)。3. 學(xué)習(xí)使用SQL語言,加深對SQL語言的認(rèn)識和理解,提高SQL語言的實際應(yīng)用能力;4. 通過給出一個具體數(shù)據(jù)庫應(yīng)用實例,使學(xué)生們了解各關(guān)系(表)間的聯(lián)系,并判斷其是否達到3NF模式.并對這個數(shù)據(jù)庫編程以達到利用高級語言處理數(shù)據(jù)庫的目的。某一個學(xué)校有若干個系,每個系有若干個學(xué)生,每個學(xué)生可以選修多門課程,一門課程也可以由多名同學(xué)選修,一個老師只講授一門課程,而同一門課程可由不同老師講授。為便于學(xué)生信息及學(xué)生成績的有效管理,需要開發(fā)一個學(xué)生成績管理系統(tǒng)。此數(shù)據(jù)庫的數(shù)據(jù)字典定義如下:(1)學(xué)生(
3、Student):學(xué)號(SNO),姓名(SNAME),性別(SSEX),年齡(SAGE),系別(SDEPT);(2)課程(Course):課程號(CNO)、課程名(CNAME)、學(xué)時(CTIME)、學(xué)分(CCREDIT)(3)教師(Teacher):教師編號(TNO),教師名(TName),性別(TSex),所在系(TDept)。實驗內(nèi)容及總要求如下:1. 根據(jù)以上數(shù)據(jù)字典,畫出該數(shù)據(jù)庫的ER圖,并將ER圖轉(zhuǎn)換成邏輯關(guān)系模式,保證每個關(guān)系均規(guī)范到3NF,最后在SQL Server中實現(xiàn)關(guān)系模式的存儲,確定主碼、外部碼、索引等。2. 利用查詢編輯器完成SQL語句操作。3. 實現(xiàn)C/S結(jié)構(gòu)的數(shù)據(jù)庫
4、編程。4. 實現(xiàn)B/S結(jié)構(gòu)的數(shù)據(jù)庫編程。環(huán)境:數(shù)據(jù)庫實驗要求如下環(huán)境,服務(wù)器端:Windows 2000/xp、數(shù)據(jù)庫服務(wù)器(SQL Server 2005)、Web服務(wù)器(IIS 5.0)和ASP??蛻舳耍篒E5.0、VB 6.0。二、實驗步驟1、 根據(jù)以上數(shù)據(jù)字典,畫出該數(shù)據(jù)庫的ER圖,完成數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計;2、 將ER圖轉(zhuǎn)換成邏輯關(guān)系模式,判斷邏輯數(shù)據(jù)庫模式中的各個關(guān)系(表)是第幾范式,如果沒有達到第三范式或BC范式,請進行規(guī)范化。完成數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計。3、 通過對象資源管理器實現(xiàn)關(guān)系模式的存儲,包括確定主碼、外部碼等。4、 按照給出的示例數(shù)據(jù)完成數(shù)據(jù)的錄入。5、 打開數(shù)據(jù)庫SQ
5、L Server的查詢編輯器,用SQL語言完成以下語句。并通過實驗結(jié)果驗證查詢語言的正確性,將每個SQL語言及結(jié)果存盤,以備老師檢查。三、相關(guān)背景知識E-R圖也稱實體-聯(lián)系圖(Entity Relationship Diagram),提供了表示實體類型、屬性和聯(lián)系的方法,用來描述現(xiàn)實世界的概念模型。E-R方法是“實體-聯(lián)系方法”(Entity-Relationship Approach)的簡稱。它是描述現(xiàn)實世界概念結(jié)構(gòu)模型的有效方法。是表示概念模型的一種方式,用矩形表示實體型,矩形框內(nèi)寫明實體名;用橢圓表示實體的屬性,并用無向邊將其與相應(yīng)的實體型連接起來;用菱形表示實體型之間的聯(lián)系,在菱形框內(nèi)
6、寫明聯(lián)系名,并用無向邊分別與有關(guān)實體型連接起來,同時在無向邊旁標(biāo)上聯(lián)系的類型(1:1,1:n或m:n)。SQL Server 是Microsoft 公司推出的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。具有使用方便可伸縮性好與相關(guān)軟件集成程度高等優(yōu)點,可跨越從運行Microsoft Windows 98 的膝上型電腦到運行Microsoft Windows 2012 的大型多處理器的服務(wù)器等多種平臺使用。Microsoft SQL Server 是一個全面的數(shù)據(jù)庫平臺,使用集成的商業(yè)智能 (BI)工具提供了企業(yè)級的數(shù)據(jù)管理。Microsoft SQL Server 數(shù)據(jù)庫引擎為關(guān)系型數(shù)據(jù)和結(jié)構(gòu)化數(shù)據(jù)提供了更安全可靠
7、的存儲功能,使您可以構(gòu)建和管理用于業(yè)務(wù)的高可用和高性能的數(shù)據(jù)應(yīng)用程序。Microsoft SQL Server 2005 是一個全面的數(shù)據(jù)庫平臺,使用集成的商業(yè)智能 (BI)工具提供了企業(yè)級的數(shù)據(jù)管理。Microsoft SQL Server 2005數(shù)據(jù)庫引擎為關(guān)系型數(shù)據(jù)和結(jié)構(gòu)化數(shù)據(jù)提供了更安全可靠的存儲功能,使您可以構(gòu)建和管理用于業(yè)務(wù)的高可用和高性能的數(shù)據(jù)應(yīng)用程序。四、編譯與執(zhí)行過程截圖1.求全體學(xué)生的學(xué)號、姓名和出生年份select Sno,Sname,Sagefrom Student2.求每個系的學(xué)生總?cè)藬?shù)并按降序排列select Sdept,count(Sno)from Studen
8、tgroup by Sdeptorder by count(Sno) desc3. 求選修了課程號為002或003的學(xué)生的學(xué)號、課程名和成績select Student.Sno,Course.Cname,Gradefrom Student,Score,Coursewhere (Score.Cno='002' or Score.Cno='003') and (Course.Cno = Score.Cno) and (Student.Sno = Score.Sno)4. 檢索選修某課程的學(xué)生人數(shù)多于3人的教師姓名select Tnamefrom Teacher,Sc
9、orewhere Teacher.Cno = Score.Cnogroup by Tnamehaving COUNT(Score.Sno)> 35. 查詢所有未選課程的學(xué)生姓名和所在系select Sname,Sdeptfrom Studentwhere Sno not in(select Sno from Score group by Sno)6.求每個同學(xué)的課程成績的最高分,查詢結(jié)果項包括:學(xué)生姓名、課程號及最高分。select SNAME,CNO,GRADE from Score y,Student where (Student.SNO = y.SNO) and y.GRADE i
10、n (select MAX(GRADE) From Score Where Sno = y.Sno group by Sno)7. 求所有講授數(shù)據(jù)結(jié)構(gòu)課程的教師姓名select distinct Tnamefrom Teacherwhere Cno in (select Cno from course where Teacher.Cno = Course.Cno and Course.Cname = '數(shù)據(jù)結(jié)構(gòu)')8. 查詢所有選修了李正科老師的課程的學(xué)生信息select Student.Sno,Sname,Ssex,Sdept,Sagefrom Student,Teacher
11、,Scorewhere Teacher.Tname = '李正科' and Student.Sno = Score.Sno and Teacher.Cno = Score.Cnogroup by Student.Sno,Sname,Ssex,Sdept,Sage9. 新建一個關(guān)系表S1(SNO,SNAME,SD,SA),其字段類型定義與Student表中的相應(yīng)字段(SNO,SNAME,SDEPT,SAGE)的數(shù)據(jù)類型定義相同。將表Student中在計算機系CS的學(xué)生數(shù)據(jù)插入到表S1中。gocreate table S1(Sno varchar(50), Sname varcha
12、r(50), Sd varchar(50), Sa varchar(50)goinsert into S1select Sno,Sname,Sdept,Sagefrom Student查看表中有S110. 建立計算機系的學(xué)生的視圖STUDENT_CS。利用視圖STUDENT_CS,將學(xué)生的001號課程的成績提高5分gocreate view Student_CSasselect *from Studentwhere Student.Sdept = 'CS'goupdate Scoreset Grade = Grade + 5where Score.Sno in (select
13、Sno from Student_CS)查看視圖中有student_cs11. 創(chuàng)建一個帶參數(shù)的存儲過程,將數(shù)據(jù)結(jié)構(gòu)課程的成績在low與Hign分?jǐn)?shù)段的學(xué)生信息提取出來,查詢后的結(jié)果包括:姓名、所在的系、成績gocreate proc getinfo(low int,high int)asbeginselect Sname,Sdept,Gradefrom Student,Course,Scorewhere (Cname = '數(shù)據(jù)結(jié)構(gòu)') and (Student.Sno = Score.Sno) and (Course.Cno = Score.Cno) and (Score.
14、Grade > low) and (Score.Grade < high)endgo六、各個表各關(guān)系表的結(jié)構(gòu)和示例數(shù)據(jù)如下: 1 學(xué)生情況表 Student SNOSNAMESSEXSDEPTSAGE96001馬小燕女CS2196002黎明男CS1896003劉東明男MA1896004趙志勇男IS2097001馬蓉女MA1997002李成功男CS2097003黎明女IS1997004李麗女CS1996005司馬志明CS18說明:(1) 主鍵:SNO 非空字段:SNAME,Ssex (2) CS:計算機系 MS:數(shù)學(xué)系 IS:信息科學(xué)系2 課程名稱表 Course CNOCNAMEC
15、TimeCCredit001數(shù)學(xué)分析1006002普通物理1106003微機原理804004數(shù)據(jù)結(jié)構(gòu)724005操作系統(tǒng)805006數(shù)據(jù)庫原理804007編譯原理603008程序設(shè)計402說明:(1) 主鍵:CNO 非空字段:Cname 3.教師授課表 Teacher TNOTNAMETSEX CNO TDEPT1101 王成剛男 004 CS 1102 李正科男 003 CS1103 嚴(yán)敏女 001 MA1105 王成銀女 004 IS1106 李副科女 003 MA 1107 劉玉蘭女 006 CS1108 王成鐵男 004 IS1109 馬蘭女 008 CS 說明:主鍵:TNO 非空字段
16、:Tname,Tsex 參照關(guān)系:Course(Cno)4 成績表 Score SNOCNOGradeSNOCNOGradeSNOCNOGrade9600100177960050049296004001879600100389960050059096003003919600100486960050068997002003919600100582960050077697002004960020018896003001699700200692960020039297001001969700400590960020069097001008959700400685 主關(guān)鍵字:(SNO,CNO) 參照關(guān)
17、系:Student(SNO),Course(CNO)七、主要相關(guān)程序源代碼1.求全體學(xué)生的學(xué)號、姓名和出生年份select Sno,Sname,Sagefrom Student2.求每個系的學(xué)生總?cè)藬?shù)并按降序排列select Sdept,count(Sno)from Studentgroup by Sdeptorder by count(Sno) desc3. 求選修了課程號為002或003的學(xué)生的學(xué)號、課程名和成績select Student.Sno,Course.Cname,Gradefrom Student,Score,Coursewhere (Score.Cno='002
18、9; or Score.Cno='003') and (Course.Cno = Score.Cno) and (Student.Sno = Score.Sno)4. 檢索選修某課程的學(xué)生人數(shù)多于3人的教師姓名select Tnamefrom Teacher,Scorewhere Teacher.Cno = Score.Cnogroup by Tnamehaving COUNT(Score.Sno)> 35. 查詢所有未選課程的學(xué)生姓名和所在系select Sname,Sdeptfrom Studentwhere Sno not in(select Sno from Sc
19、ore group by Sno)6.求每個同學(xué)的課程成績的最高分,查詢結(jié)果項包括:學(xué)生姓名、課程號及最高分。select SNAME,CNO,GRADE from Score y,Student where (Student.SNO = y.SNO) and y.GRADE in (select MAX(GRADE) From Score Where Sno = y.Sno group by Sno)7. 求所有講授數(shù)據(jù)結(jié)構(gòu)課程的教師姓名select distinct Tnamefrom Teacherwhere Cno in (select Cno from course where Te
20、acher.Cno = Course.Cno and Course.Cname = '數(shù)據(jù)結(jié)構(gòu)')8. 查詢所有選修了李正科老師的課程的學(xué)生信息select Student.Sno,Sname,Ssex,Sdept,Sagefrom Student,Teacher,Scorewhere Teacher.Tname = '李正科' and Student.Sno = Score.Sno and Teacher.Cno = Score.Cnogroup by Student.Sno,Sname,Ssex,Sdept,Sage9. 新建一個關(guān)系表S1(SNO,SNAME,SD,SA),其字段類型定義與Student表中的相應(yīng)字段(SNO,SNAME,SDEPT,SAGE)的數(shù)據(jù)類型定義相同。將表Student中在計算機系CS的學(xué)生數(shù)據(jù)插入到表S1中。gocreate table S1(Sno varchar(50), Sname varchar(50), Sd varchar(50), Sa varchar(50)goinsert into S1select Sno,Sname,Sdept,Sagefrom Student查看表中有S110. 建立計算機系的學(xué)生的視
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)字化時代下國企改革的機遇與挑戰(zhàn)
- 環(huán)境可持續(xù)性對跨境電商的影響與應(yīng)對策略
- 商業(yè)空間標(biāo)識系統(tǒng)設(shè)計基礎(chǔ)知識點歸納
- 理賠業(yè)務(wù)風(fēng)險管理跨部門溝通機制完善風(fēng)險基礎(chǔ)知識點歸納
- 數(shù)字化教育轉(zhuǎn)型中的教聯(lián)體創(chuàng)新實踐
- 學(xué)生應(yīng)急救護知識素養(yǎng)評價與提升策略
- 職場溝通藝術(shù)
- 大雪飲食養(yǎng)生攻略
- 春意傳媒策略
- 心理健康探索之旅
- 護理部用藥安全質(zhì)量評價標(biāo)準(zhǔn)
- 電子印鑒卡講解
- 異步電動機轉(zhuǎn)差頻率間接矢量控制matlab仿真
- 中國本土私募股權(quán)基金的投資管理及退出(清華)
- 深基坑工程安全檢查表范本
- 汽車零部件規(guī)范申報ppt課件
- 門護板設(shè)計指導(dǎo)書RYSAT
- 沙盤游戲治療(課堂PPT)
- 祭侄文稿顏真卿
- 項目驗收單簡潔模板
- 托物言志作文寫作指導(dǎo)
評論
0/150
提交評論