![數(shù)據(jù)庫原理及應(yīng)用課件6_第1頁](http://file4.renrendoc.com/view/6e37efc4b6cdc42400bfc3a2acc9fe61/6e37efc4b6cdc42400bfc3a2acc9fe611.gif)
![數(shù)據(jù)庫原理及應(yīng)用課件6_第2頁](http://file4.renrendoc.com/view/6e37efc4b6cdc42400bfc3a2acc9fe61/6e37efc4b6cdc42400bfc3a2acc9fe612.gif)
![數(shù)據(jù)庫原理及應(yīng)用課件6_第3頁](http://file4.renrendoc.com/view/6e37efc4b6cdc42400bfc3a2acc9fe61/6e37efc4b6cdc42400bfc3a2acc9fe613.gif)
![數(shù)據(jù)庫原理及應(yīng)用課件6_第4頁](http://file4.renrendoc.com/view/6e37efc4b6cdc42400bfc3a2acc9fe61/6e37efc4b6cdc42400bfc3a2acc9fe614.gif)
![數(shù)據(jù)庫原理及應(yīng)用課件6_第5頁](http://file4.renrendoc.com/view/6e37efc4b6cdc42400bfc3a2acc9fe61/6e37efc4b6cdc42400bfc3a2acc9fe615.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
西藏大學(xué)工學(xué)院電信系
數(shù)據(jù)庫系統(tǒng)概論AnIntroductiontoDatabaseSystem第三章關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQL(續(xù)2)《數(shù)據(jù)庫原理及應(yīng)用》課件第三章第三章
關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQL3.1SQL概述3.2學(xué)生-課程數(shù)據(jù)庫3.3數(shù)據(jù)定義3.4數(shù)據(jù)查詢3.5數(shù)據(jù)更新3.6視圖3.7小結(jié)《數(shù)據(jù)庫原理及應(yīng)用》課件第三章3.5數(shù)據(jù)更新3.5.1插入數(shù)據(jù)3.5.2修改數(shù)據(jù)3.5.3刪除數(shù)據(jù)
《數(shù)據(jù)庫原理及應(yīng)用》課件第三章3.5.1插入數(shù)據(jù)兩種插入數(shù)據(jù)方式1.插入元組2.插入子查詢結(jié)果可以一次插入多個元組《數(shù)據(jù)庫原理及應(yīng)用》課件第三章一、插入元組語句格式
INSERT INTO<表名>[(<屬性列1>[,<屬性列2>…)] VALUES(<常量1>[,<常量2>]…)功能將新元組插入指定表中《數(shù)據(jù)庫原理及應(yīng)用》課件第三章插入元組(續(xù))
INTO子句屬性列的順序可與表定義中的順序不一致沒有指定屬性列指定部分屬性列
VALUES子句
提供的值必須與INTO子句匹配值的個數(shù)值的類型《數(shù)據(jù)庫原理及應(yīng)用》課件第三章插入元組(續(xù))[例1]將一個新學(xué)生元組(學(xué)號:200215128;姓名:陳冬;性別:男;所在系:IS;年齡:18歲)插入到Student表中。
INSERTINTOStudent(Sno,Sname,Ssex,Sdept,Sage)VALUES('200215128','陳冬','男','IS',18);《數(shù)據(jù)庫原理及應(yīng)用》課件第三章插入元組(續(xù))[例2]將學(xué)生張成民的信息插入到Student表中。
INSERT INTOStudent VALUES(‘200215126’,‘張成民’,‘男’,18,'CS');《數(shù)據(jù)庫原理及應(yīng)用》課件第三章插入元組(續(xù))[例3]插入一條選課記錄('200215128','1')。
INSERTINTOSC(Sno,Cno)VALUES(‘200215128’,‘1’);
RDBMS將在新插入記錄的Grade列上自動地賦空值。或者:
INSERTINTOSCVALUES('200215128','1',NULL);《數(shù)據(jù)庫原理及應(yīng)用》課件第三章二、插入子查詢結(jié)果語句格式
INSERTINTO<表名>[(<屬性列1>[,<屬性列2>…)]
子查詢;功能將子查詢結(jié)果插入指定表中《數(shù)據(jù)庫原理及應(yīng)用》課件第三章插入子查詢結(jié)果(續(xù))
INTO子句(與插入元組類似)
子查詢SELECT子句目標(biāo)列必須與INTO子句匹配值的個數(shù)值的類型《數(shù)據(jù)庫原理及應(yīng)用》課件第三章插入子查詢結(jié)果(續(xù))[例4]對每一個系,求學(xué)生的平均年齡,并把結(jié)果存入數(shù)據(jù)庫。第一步:建表
CREATETABLEDept_age(SdeptCHAR(15) /*系名*/
Avg_ageSMALLINT);
/*學(xué)生平均年齡*/
《數(shù)據(jù)庫原理及應(yīng)用》課件第三章插入子查詢結(jié)果(續(xù))第二步:插入數(shù)據(jù)
INSERTINTODept_age(Sdept,Avg_age)SELECTSdept,AVG(Sage)FROMStudentGROUPBYSdept;《數(shù)據(jù)庫原理及應(yīng)用》課件第三章插入子查詢結(jié)果(續(xù))RDBMS在執(zhí)行插入語句時會檢查所插元組是否破壞表上已定義的完整性規(guī)則實體完整性參照完整性用戶定義的完整性NOTNULL約束UNIQUE約束值域約束《數(shù)據(jù)庫原理及應(yīng)用》課件第三章3.5數(shù)據(jù)更新3.5.1插入數(shù)據(jù)3.5.2修改數(shù)據(jù)3.5.3刪除數(shù)據(jù)
《數(shù)據(jù)庫原理及應(yīng)用》課件第三章3.4.2修改數(shù)據(jù)語句格式
UPDATE<表名>SET<列名>=<表達式>[,<列名>=<表達式>]…[WHERE<條件>];功能修改指定表中滿足WHERE子句條件的元組《數(shù)據(jù)庫原理及應(yīng)用》課件第三章修改數(shù)據(jù)(續(xù))SET子句指定修改方式要修改的列修改后取值WHERE子句指定要修改的元組缺省表示要修改表中的所有元組《數(shù)據(jù)庫原理及應(yīng)用》課件第三章修改數(shù)據(jù)(續(xù))三種修改方式1.修改某一個元組的值2.修改多個元組的值3.帶子查詢的修改語句《數(shù)據(jù)庫原理及應(yīng)用》課件第三章1.修改某一個元組的值[例5]將學(xué)生200215121的年齡改為22歲
UPDATEStudentSETSage=22WHERESno='200215121';
《數(shù)據(jù)庫原理及應(yīng)用》課件第三章2.修改多個元組的值[例6]將所有學(xué)生的年齡增加1歲
UPDATEStudentSETSage=Sage+1;《數(shù)據(jù)庫原理及應(yīng)用》課件第三章3.帶子查詢的修改語句[例7]將計算機科學(xué)系全體學(xué)生的成績置零。
UPDATESCSETGrade=0WHERE'CS'=(SELETESdeptFROMStudentWHEREStudent.Sno=SC.Sno);《數(shù)據(jù)庫原理及應(yīng)用》課件第三章修改數(shù)據(jù)(續(xù))RDBMS在執(zhí)行修改語句時會檢查修改操作是否破壞表上已定義的完整性規(guī)則實體完整性主碼不允許修改用戶定義的完整性
NOTNULL約束
UNIQUE約束值域約束《數(shù)據(jù)庫原理及應(yīng)用》課件第三章3.5數(shù)據(jù)更新3.5.1插入數(shù)據(jù)3.5.2修改數(shù)據(jù)3.5.3刪除數(shù)據(jù)
《數(shù)據(jù)庫原理及應(yīng)用》課件第三章3.5.3刪除數(shù)據(jù)語句格式
DELETEFROM<表名>[WHERE<條件>];功能刪除指定表中滿足WHERE子句條件的元組WHERE子句指定要刪除的元組缺省表示要刪除表中的全部元組,表的定義仍在字典中《數(shù)據(jù)庫原理及應(yīng)用》課件第三章刪除數(shù)據(jù)(續(xù))三種刪除方式1.刪除某一個元組的值2.刪除多個元組的值3.帶子查詢的刪除語句《數(shù)據(jù)庫原理及應(yīng)用》課件第三章1.刪除某一個元組的值[例8]刪除學(xué)號為200215128的學(xué)生記錄。
DELETEFROMStudentWHERESno=200215128';《數(shù)據(jù)庫原理及應(yīng)用》課件第三章2.刪除多個元組的值[例9]刪除所有的學(xué)生選課記錄。
DELETEFROMSC;《數(shù)據(jù)庫原理及應(yīng)用》課件第三章3.帶子查詢的刪除語句[例10]刪除計算機科學(xué)系所有學(xué)生的選課記錄。
DELETEFROMSCWHERE'CS'=(SELETESdeptFROMStudentWHEREStudent.Sno=SC.Sno);《數(shù)據(jù)庫原理及應(yīng)用》課件第三章第三章
關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQL3.1SQL概述3.2學(xué)生-課程數(shù)據(jù)庫3.3數(shù)據(jù)定義3.4數(shù)據(jù)查詢3.5數(shù)據(jù)更新3.6視圖3.7小結(jié)《數(shù)據(jù)庫原理及應(yīng)用》課件第三章3.6視圖視圖的特點虛表,是從一個或幾個基本表(或視圖)導(dǎo)出的表只存放視圖的定義,不存放視圖對應(yīng)的數(shù)據(jù)基表中的數(shù)據(jù)發(fā)生變化,從視圖中查詢出的數(shù)據(jù)也隨之改變查詢分析器企業(yè)管理器《數(shù)據(jù)庫原理及應(yīng)用》課件第三章3.6視圖基于視圖的操作
查詢刪除受限更新定義基于該視圖的新視圖《數(shù)據(jù)庫原理及應(yīng)用》課件第三章3.6視圖3.6.1定義視圖3.6.2查詢視圖3.6.3更新視圖3.6.4視圖的作用《數(shù)據(jù)庫原理及應(yīng)用》課件第三章3.6.1定義視圖建立視圖刪除視圖《數(shù)據(jù)庫原理及應(yīng)用》課件第三章一、建立視圖語句格式
CREATEVIEW
<視圖名>[(<列名>[,<列名>]…)]AS<子查詢>[WITHCHECKOPTION];組成視圖的屬性列名:全部省略或全部指定子查詢不允許含有ORDERBY子句和DISTINCT短語《數(shù)據(jù)庫原理及應(yīng)用》課件第三章建立視圖(續(xù))RDBMS執(zhí)行CREATEVIEW語句時只是把視圖定義存入數(shù)據(jù)字典,并不執(zhí)行其中的SELECT語句。在對視圖查詢時,按視圖的定義從基本表中將數(shù)據(jù)查出。《數(shù)據(jù)庫原理及應(yīng)用》課件第三章建立視圖(續(xù))
[例1]建立信息系學(xué)生的視圖。
CREATEVIEWIS_StudentASSELECTSno,Sname,SageFROMStudentWHERESdept='IS';查詢分析器《數(shù)據(jù)庫原理及應(yīng)用》課件第三章建立視圖(續(xù))[例2]建立信息系學(xué)生的視圖,并要求進行修改和插入操作時仍需保證該視圖只有信息系的學(xué)生
。
CREATEVIEWIS_StudentASSELECTSno,Sname,SageFROMStudentWHERESdept='IS'WITHCHECKOPTION;《數(shù)據(jù)庫原理及應(yīng)用》課件第三章建立視圖(續(xù))對IS_Student視圖的更新操作:修改操作:自動加上Sdept='IS'的條件刪除操作:自動加上Sdept='IS'的條件插入操作:自動檢查Sdept屬性值是否為'IS'如果不是,則拒絕該插入操作如果沒有提供Sdept屬性值,則自動定義Sdept為'IS'《數(shù)據(jù)庫原理及應(yīng)用》課件第三章建立視圖(續(xù))基于多個基表的視圖[例3]建立信息系選修了1號課程的學(xué)生視圖。
CREATEVIEWIS_S1(Sno,Sname,Grade)ASSELECTStudent.Sno,Sname,GradeFROMStudent,SCWHERESdept='IS'AND
Student.Sno=SC.SnoAND
SC.Cno='1';《數(shù)據(jù)庫原理及應(yīng)用》課件第三章建立視圖(續(xù))基于視圖的視圖
[例4]建立信息系選修了1號課程且成績在90分以上的學(xué)生的視圖。
CREATEVIEWIS_S2ASSELECTSno,Sname,GradeFROMIS_S1WHEREGrade>=90;《數(shù)據(jù)庫原理及應(yīng)用》課件第三章建立視圖(續(xù))帶表達式的視圖[例5]定義一個反映學(xué)生出生年份的視圖。
CREATEVIEWBT_S(Sno,Sname,Sbirth)ASSELECTSno,Sname,2000-SageFROMStudent;《數(shù)據(jù)庫原理及應(yīng)用》課件第三章建立視圖(續(xù))分組視圖[例6]將學(xué)生的學(xué)號及他的平均成績定義為一個視圖 假設(shè)SC表中“成績”列Grade為數(shù)字型
CREATVIEWS_G(Sno,Gavg)ASSELECTSno,AVG(Grade)FROMSCGROUPBYSno;《數(shù)據(jù)庫原理及應(yīng)用》課件第三章建立視圖(續(xù))不指定屬性列[例7]將Student表中所有女生記錄定義為一個視圖
CREATEVIEWF_Student(F_Sno,name,sex,age,dept)AS
SELECT*FROMStudentWHERESsex=‘女’;缺點:修改基表Student的結(jié)構(gòu)后,Student表與F_Student視圖的映象關(guān)系被破壞,導(dǎo)致該視圖不能正確工作?!稊?shù)據(jù)庫原理及應(yīng)用》課件第三章二、刪除視圖語句的格式:
DROPVIEW<視圖名>;該語句從數(shù)據(jù)字典中刪除指定的視圖定義如果該視圖上還導(dǎo)出了其他視圖,使用CASCADE級聯(lián)刪除語句,把該視圖和由它導(dǎo)出的所有視圖一起刪除刪除基表時,由該基表導(dǎo)出的所有視圖定義都必須顯式地使用DROPVIEW語句刪除《數(shù)據(jù)庫原理及應(yīng)用》課件第三章刪除視圖(續(xù))[例8]刪除視圖BT_S:DROPVIEWBT_S;
刪除視圖IS_S1:DROPVIEWIS_S1;拒絕執(zhí)行級聯(lián)刪除:
DROPVIEWIS_S1CASCADE;《數(shù)據(jù)庫原理及應(yīng)用》課件第三章3.6視圖3.6.1定義視圖3.6.2查詢視圖3.6.3更新視圖3.6.4視圖的作用《數(shù)據(jù)庫原理及應(yīng)用》課件第三章3.6.2查詢視圖用戶角度:查詢視圖與查詢基本表相同RDBMS實現(xiàn)視圖查詢的方法視圖消解法(ViewResolution)進行有效性檢查轉(zhuǎn)換成等價的對基本表的查詢執(zhí)行修正后的查詢《數(shù)據(jù)庫原理及應(yīng)用》課件第三章查詢視圖(續(xù))[例9]在信息系學(xué)生的視圖中找出年齡小于20歲的學(xué)生。
SELECTSno,SageFROMIS_StudentWHERESage<20;IS_Student視圖的定義(參見視圖定義例1)《數(shù)據(jù)庫原理及應(yīng)用》課件第三章查詢視圖(續(xù))視圖消解轉(zhuǎn)換后的查詢語句為:
SELECTSno,SageFROMStudentWHERESdept='IS'ANDSage<20;《數(shù)據(jù)庫原理及應(yīng)用》課件第三章查詢視圖(續(xù))[例10]查詢選修了1號課程的信息系學(xué)生SELECTIS_Student.Sno,SnameFROMIS_Student,SCWHEREIS_Student.Sno=SC.SnoANDSC.Cno='1';《數(shù)據(jù)庫原理及應(yīng)用》課件第三章查詢視圖(續(xù))視圖消解法的局限有些情況下,視圖消解法不能生成正確查詢。
《數(shù)據(jù)庫原理及應(yīng)用》課件第三章查詢視圖(續(xù))[例11]在S_G視圖中查詢平均成績在90分以上的學(xué)生學(xué)號和平均成績SELECT*FROMS_GWHEREGavg>=90;
S_G視圖的子查詢定義:
CREATEVIEWS_G(Sno,Gavg)ASSELECTSno,AVG(Grade)FROMSCGROUPBYSno;《數(shù)據(jù)庫原理及應(yīng)用》課件第三章查詢轉(zhuǎn)換錯誤:SELECTSno,AVG(Grade)FROMSCWHEREAVG(Grade)>=90GROUPBYSno;正確:SELECTSno,AVG(Grade)FROMSCGROUPBYSnoHAVINGAVG(Grade)>=90;《數(shù)據(jù)庫原理及應(yīng)用》課件第三章3.6視圖3.6.1定義視圖3.6.2查詢視圖3.6.3更新視圖3.6.4視圖的作用《數(shù)據(jù)庫原理及應(yīng)用》課件第三章更新視圖(續(xù))[例12]將信息系學(xué)生視圖IS_Student中學(xué)號200215122的學(xué)生姓名改為“劉辰”。UPDATEIS_StudentSETSname='劉辰'WHERESno='200215122';轉(zhuǎn)換后的語句:UPDATEStudentSETSname='劉辰'WHERESno='200215122'ANDSdept='IS';《數(shù)據(jù)庫原理及應(yīng)用》課件第三章更新視圖(續(xù))[例13]向信息系學(xué)生視圖IS_S中插入一個新的學(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 文山2025年云南文山市公安局第一批警務(wù)輔助人員招聘47人筆試歷年參考題庫附帶答案詳解
- 怒江2025年云南怒江州財政局公益性崗位招聘筆試歷年參考題庫附帶答案詳解
- 廣州2024年廣東廣州市海珠區(qū)江海街道基層公共就業(yè)創(chuàng)業(yè)服務(wù)崗位招募筆試歷年參考題庫附帶答案詳解
- 2025年納豆香菇絲項目可行性研究報告
- 2025年電動橋式圓角擋閘項目可行性研究報告
- 2025至2031年中國潔凈吹淋傳遞窗行業(yè)投資前景及策略咨詢研究報告
- 2025至2031年中國朱雀系列外墻磚行業(yè)投資前景及策略咨詢研究報告
- 2025年插件式鋁基板項目可行性研究報告
- 2025年定柱懸臂起重機項目可行性研究報告
- 2025至2031年中國保爾塑像行業(yè)投資前景及策略咨詢研究報告
- 2023-2024學(xué)年九年級三調(diào)語文試卷(含答案)
- 醫(yī)學(xué)教程 常見急腹癥的超聲診斷課件
- DB11T 1481-2024生產(chǎn)經(jīng)營單位生產(chǎn)安全事故應(yīng)急預(yù)案評審規(guī)范
- 《氓》教學(xué)設(shè)計 2023-2024學(xué)年統(tǒng)編版高中語文選擇性必修下冊
- 《網(wǎng)店運營與管理》第3版 課件全套 白東蕊 第1-11章 網(wǎng)上開店概述- 移動網(wǎng)店運營
- 2024年全國國家電網(wǎng)招聘之電網(wǎng)計算機考試歷年考試題(附答案)
- 化學(xué)元素周期表注音版
- 藥物過敏性休克
- T-GDASE 0042-2024 固定式液壓升降裝置安全技術(shù)規(guī)范
- 2024福建省廈門市總工會擬錄用人員筆試歷年典型考題及考點剖析附答案帶詳解
- 四川省康定市大槽門金礦資源儲量核實報告
評論
0/150
提交評論