數(shù)據(jù)庫(kù)原理實(shí)驗(yàn)指導(dǎo)書(shū)_第1頁(yè)
數(shù)據(jù)庫(kù)原理實(shí)驗(yàn)指導(dǎo)書(shū)_第2頁(yè)
數(shù)據(jù)庫(kù)原理實(shí)驗(yàn)指導(dǎo)書(shū)_第3頁(yè)
數(shù)據(jù)庫(kù)原理實(shí)驗(yàn)指導(dǎo)書(shū)_第4頁(yè)
數(shù)據(jù)庫(kù)原理實(shí)驗(yàn)指導(dǎo)書(shū)_第5頁(yè)
已閱讀5頁(yè),還剩10頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

10《數(shù)據(jù)庫(kù)原理》試驗(yàn)指導(dǎo)書(shū)試驗(yàn)1生疏SQLServer一、試驗(yàn)?zāi)康纳钄?shù)據(jù)庫(kù)表的創(chuàng)立及治理方法。二、試驗(yàn)內(nèi)容使用企業(yè)治理器創(chuàng)立數(shù)據(jù)庫(kù)。三、試驗(yàn)過(guò)程首先通過(guò)【開(kāi)頭】→【程序】→【MicrosoftSQLServers】→【企業(yè)治理1。1企業(yè)治理器StuCourse。Student、Course、SC,構(gòu)造如下:列名數(shù)據(jù)類型長(zhǎng)度完整性約束snochar列名數(shù)據(jù)類型長(zhǎng)度完整性約束snochar8主鍵snamechar4不為空ssexssexsagesdeptcharintchar1102課程信息表:course列名數(shù)據(jù)類型 長(zhǎng)度完整性約束cnocnameccreditchar 2char 30int3學(xué)生選課表:sc主鍵列名數(shù)據(jù)類型 長(zhǎng)度完整性約束snochar 8主屬性,外鍵cnogradechar 2int 是主屬性,外鍵點(diǎn)擊StuCourse。在表設(shè)計(jì)器〔如2〕中輸入學(xué)生表的各列及其數(shù)據(jù)類型,完畢后保存為“Student”表。2表設(shè)計(jì)器以同樣的方法創(chuàng)立其余表。建立主碼studentstudentSno,點(diǎn)擊右鍵,選擇設(shè)置主鍵。3Sno列不能輸入一樣的數(shù)據(jù),也不能取空值。用同樣的方法設(shè)置其他表的主碼.設(shè)定外碼scsnostudent選擇“關(guān)系”后會(huì)彈出“屬性”對(duì)話框,如圖4.4設(shè)置外碼student”外鍵表“ssnosccno。設(shè)定自定義完整性studentCHECKage>15andage<25”5所示,然后點(diǎn)擊關(guān)閉。5自定義完整性studentssex男orssex=’女’。輸入數(shù)據(jù)student表,在彈出菜單中選擇然后在表格中輸入相應(yīng)的記錄。Ssname王Ssname王sSagenosex0女201麗0李女182紅0王男173亮SdeptCSCSMACourse表CnoCnoCnameccredit1英語(yǔ)42數(shù)學(xué)43語(yǔ)文24物理1Sc表SnoCnoGrade0116501375021900328803460下面來(lái)驗(yàn)證前面設(shè)置的外碼、自定義完整性:〔1〕在sc表中分別添加記錄“04 2 95”和“02 670”.看一下能否添加到表中?為什么?“04 2 95Sno屬性的值“04Student中找不到一個(gè)元組,其Sno屬性的值與之相等。“02 670Cno屬性的值“6Course中找不到一個(gè)元組,其Cno2條記錄不能被添加。孫衛(wèi)男3520CS記錄“04孫衛(wèi)男35CS”不滿足約束條件“age>15andage<25”記錄“04孫衛(wèi)重20CSssex男orssex=女試驗(yàn)2SQL定義語(yǔ)句一、試驗(yàn)?zāi)康腟QL語(yǔ)言環(huán)境二、試驗(yàn)內(nèi)容2drop語(yǔ)句的使用3alter語(yǔ)句的使用三、試驗(yàn)過(guò)程利用create語(yǔ)句創(chuàng)立一個(gè)studentSnoSnameSsex、Sdept五個(gè)屬性組成。其中,學(xué)號(hào)是主碼,姓名取值唯一。CREATETABLEStudent(Sno CHAR(9)PRIMARYKEY,/*列級(jí)完整性約束條件*/Sname CHAR(20)UNIQUE, /*Sname取唯一值*/Ssex CHAR(2),Sage SMALLINT,Sdept CHAR(20));將創(chuàng)立具有如以以下圖1所示的表構(gòu)造的數(shù)據(jù)庫(kù)表。1表構(gòu)造CnoCpnoCcreditCno是主碼,CpnoCno屬性。CREATETABLE Course(Cno CHAR(4) Cname CHAR(40),Cpno CHAR(4),Ccredit SMALLINT,FOREIGNKEY(Cpno)REFERENCES Course(Cno));建立一個(gè)“學(xué)生選課”表SC。主碼由Sno,Cno組成。Sno是外碼,被參Student,CnoCourse。CREATETABLE (Sno CHAR(9),Cno CHAR(4),Grade SMALLINT,PRIMARYKEY(Sno,Cno),FOREIGNKEY(Sno)REFERENCESStudent(Sno),FOREIGNKEY(Cno)REFERENCESCourse(Cno));SCOME列,其數(shù)據(jù)類型為日期型。AltertablestudentaddSCOMEDATE;2修改后的表構(gòu)造將年齡的數(shù)據(jù)類型由字符型改為整數(shù)。ALTERTABLEStudentALTERCOLUMNSageINT;增加課程名稱必需取唯一值的約束條件。ALTERTABLECourseADDUNIQUE(Cname);createstudent上按學(xué)號(hào)升序建立唯一索引。Createuniqueindexstusnoonstudent(SNO);8.Course表按課程號(hào)降序建唯一索引。CREATEUNIQUEINDEX CoucnoONCourse(CnoDESC);dropstudent表的按學(xué)號(hào)升序的唯一索引。Dropindexstusno;改索引的命令。。DroptableCourse自動(dòng)刪除,故應(yīng)慎重。試驗(yàn)3SQL查詢語(yǔ)句一、試驗(yàn)?zāi)康膕elect語(yǔ)句實(shí)現(xiàn)簡(jiǎn)潔的查詢二、試驗(yàn)內(nèi)容三、試驗(yàn)過(guò)程studentcourse和學(xué)生sc。其中:student(SNO,SNAME,SSEX,SAGE,SDEPT)課程表:course(CNO,CNAME,CPNO,CCREDIT)學(xué)生選課表:sc(SNO,CNO,GRADE)名及年齡。Select SNAME,SAGEFROMSTUDENTWHERESAGE<20;查詢名字中第2個(gè)為“立”的學(xué)生的姓名和學(xué)號(hào)。Select FromstudentWheresnamelike_立%’;績(jī)〔成績(jī)?yōu)榭罩怠车膶W(xué)生的學(xué)號(hào)和相應(yīng)的課程號(hào)。Select sno,cnoFrom courseWheregrade IS NULL;Selectsno,gradeFromscWherecno=’3’Orderbygradedesc;Select MAX(grade)From scWherecno=’1’;查詢選修了3門(mén)以上課程的學(xué)生的學(xué)號(hào)。Select snoFrom scGroupbysnoHaving COUNT(*)>3;Selectstudent.*,sc.*Fromstudent,scWherestudent.sno=sc.sno;Selectstudent.sno,snameFrom student,scWherestudent.sno=sc.sno andSc.Grade>85查詢其他系中比信息系全部學(xué)生年齡都小的學(xué)生姓名及年齡。Selectsname,sageFormstudentWheresage<all(selectsagefrom wheresdept=’IS’)andsdept<>’IS’;SelectsnameFromstudentWhereexists(select*fromscwheresno=student.snoandcno=’1’);的學(xué)生。SelectsnoFromscWherecno=’1’UnionSelectsnoFromscWherecno=’2’;此題也可用多重條件查詢實(shí)現(xiàn),主要是練習(xí)集合查詢。中只有數(shù)學(xué)系的學(xué)生。Createviewm_studentAsSelectsno,sname,sageFromstudentWithcheckoption;建立信息系選修了1號(hào)課程的學(xué)生的視圖。CreateviewIS_S1(sno,sname,grade)AsSelect*Fromstudent,scStudent.sno=sc.snoandSo=’1’;m_student視圖。Dropviewm_student;故也沒(méi)供給修改視圖的語(yǔ)句。轉(zhuǎn)換,然后在執(zhí)行修正了的查詢。試驗(yàn)4SQL更語(yǔ)句一、試驗(yàn)?zāi)康腟QL更語(yǔ)句的使用二、試驗(yàn)內(nèi)容1update語(yǔ)句的使用2delete語(yǔ)句的使用3insert語(yǔ)句的使用4grant語(yǔ)句的使用試驗(yàn)過(guò)程202315128;姓名:陳冬;性別:男;所在系:18歲〕Student表中。insertinto student(sno,sname,ssex,sdept,sage)values(”202315128”,”陳冬”,”男”,”IS”,18);表中。insertinto studentvalues(‘202315126’‘張成民’‘男’,18,”cs”);3.插入一條選課記錄”202315128”,”1”)。INSERTINTOSC(Sno,Cno)VALUES(‘202315128’,‘1’);第一步:建表CREATE TABLE Dept_age(Sdept CHAR(15) /*系名*/Avg_ageSMALLINT); 學(xué)生平均年齡*/其次步:插入數(shù)據(jù)INSERTINTO Dept_age(Sdept,Avg_age)SELECT FROM StudentGROUPBYSdept; 1號(hào)課程。UpdatescSetcno=’1’Wheresno202315122and 6.1歲UpdateStudentSetSage=Sage+1;UPDATESCSET Wheresnoin(selectsnoFromstudentWheresdept=’cs’)deletefromstudentwhereSno=202315128”;3的記錄。DeleteFromscWherecno=’3’;DeleteFrom courseWherecno=’3’;DELETEFROMSCWHERE (SELETESdeptFROMStudentWHEREStudent.Sno=SC.Sno);權(quán)限授予擁護(hù)張勇,并允許他再將此權(quán)限授予其他用戶。GrantinsertOn

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論