SQL Server數(shù)據(jù)庫(kù)教程第6章 視圖_第1頁(yè)
SQL Server數(shù)據(jù)庫(kù)教程第6章 視圖_第2頁(yè)
SQL Server數(shù)據(jù)庫(kù)教程第6章 視圖_第3頁(yè)
SQL Server數(shù)據(jù)庫(kù)教程第6章 視圖_第4頁(yè)
SQL Server數(shù)據(jù)庫(kù)教程第6章 視圖_第5頁(yè)
已閱讀5頁(yè),還剩17頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1第6章視圖6.1創(chuàng)建視圖6.2查詢視圖6.3更新視圖6.4修改視圖定義和重命名視圖6.5查看視圖信息6.6刪除視圖SQLServer數(shù)據(jù)庫(kù)教程(第3版)2第6章視圖視圖(View)是從一個(gè)或多個(gè)表(或視圖)導(dǎo)出的,用來導(dǎo)出視圖的表稱為基表,導(dǎo)出的視圖又稱為虛表。在數(shù)據(jù)庫(kù)中,只存儲(chǔ)視圖的定義,不存放視圖對(duì)應(yīng)的數(shù)據(jù),這些數(shù)據(jù)仍然存放在原來的基表中。視圖有以下優(yōu)點(diǎn):

●方便用戶的查詢和處理,簡(jiǎn)化數(shù)據(jù)操作。

●簡(jiǎn)化用戶的權(quán)限管理,增加安全性。

●便于數(shù)據(jù)共享。

●屏蔽數(shù)據(jù)庫(kù)的復(fù)雜性。

●可以重新組織數(shù)據(jù)。

SQLServer數(shù)據(jù)庫(kù)教程(第3版)36.1創(chuàng)建視圖T-SQL創(chuàng)建視圖的語(yǔ)句是CREATEVIEW語(yǔ)句。語(yǔ)法格式:CREATEVIEW[schema_name.]view_name[(column[,...n])][WITH<view_attribute>[,…n]]ASselect_statement[WITHCHECKOPTION]說明:

●view_name:視圖名稱;scheme是數(shù)據(jù)庫(kù)架構(gòu)名

column:列名,此為視圖中包含的列,最多可引用1024個(gè)列。

WITH子句:指出視圖的屬性

select_statement:定義視圖的SELECT語(yǔ)句,可在該語(yǔ)句中使用多個(gè)表或視圖。

●WITHCHECKOPTION:指出在視圖上進(jìn)行的修改都要符合select_statement所指定的準(zhǔn)則。

SQLServer數(shù)據(jù)庫(kù)教程(第3版)46.1創(chuàng)建視圖【例6.1】在stsc數(shù)據(jù)庫(kù)中創(chuàng)建st_comm視圖,包括學(xué)號(hào)、姓名、課程名、成績(jī)、專業(yè),且專業(yè)為通信。USEstscGOCREATEVIEWst_commASSELECTstudent.stno,student.stname,ame,score.grade,student.specialityFROMstudent,score,courseWHEREstudent.stno=score.stnoANDo=oANDstudent.speciality='通信'WITHCHECKOPTIONGO

SQLServer數(shù)據(jù)庫(kù)教程(第3版)56.2查詢視圖

SQLServer數(shù)據(jù)庫(kù)教程(第3版)【例6.2】查詢st_comm視圖。USEstscSELECT*FROMst_comm查詢結(jié)果:stnostnamecnamegradespeciality------------------------------------------------------------121001李賢友數(shù)字電路92通信121001李賢友微機(jī)原理91通信121001李賢友高等數(shù)學(xué)94通信121002周映雪數(shù)字電路72通信121002周映雪微機(jī)原理65通信121002周映雪高等數(shù)學(xué)73通信121005劉剛數(shù)字電路87通信121005劉剛微機(jī)原理85通信121005劉剛高等數(shù)學(xué)82通信66.2查詢視圖【例6.3】查詢通信專業(yè)學(xué)生的姓名、課程名和成績(jī)。USEstscSELECTstname,cname,gradeFROMst_comm查詢結(jié)果:stnamecnamegrade-------------------------------------李賢友數(shù)字電路92李賢友微機(jī)原理91李賢友高等數(shù)學(xué)94周映雪數(shù)字電路72周映雪微機(jī)原理65周映雪高等數(shù)學(xué)73劉剛數(shù)字電路87劉剛微機(jī)原理85劉剛高等數(shù)學(xué)82

SQLServer數(shù)據(jù)庫(kù)教程(第3版)76.2查詢視圖【例6.4】查詢學(xué)生平均成績(jī)?cè)?5分以上的學(xué)號(hào)和平均成績(jī)。創(chuàng)建視圖sc_avg語(yǔ)句如下:USEstscGOCREATEVIEWsc_avg(stno,avg_grade)ASSELECTstno,AVG(grade)FROMscoreGROUPBYstnoGO

SQLServer數(shù)據(jù)庫(kù)教程(第3版)86.2查詢視圖使用SELECT語(yǔ)句對(duì)sc_avg視圖進(jìn)行查詢:USEstscSELECT*FROMsc_avg查詢結(jié)果:stnoavg_grade--------------------121001921210027012100584122001NULL1220029412200483

SQLServer數(shù)據(jù)庫(kù)教程(第3版)96.3更新視圖6.3.1可更新視圖【例6.5】在stsc數(shù)據(jù)庫(kù)中,以student為基表,創(chuàng)建專業(yè)為計(jì)算機(jī)的可更新視圖st_cp。USEstscGOCREATEVIEWst_cpASSELECT*FROMstudentWHEREspecialist='計(jì)算機(jī)'GO

SQLServer數(shù)據(jù)庫(kù)教程(第3版)106.3更新視圖使用SELECT語(yǔ)句查詢st_cp視圖USEstscSELECT*FROMst_cp查詢結(jié)果:stnostnamestsexstbirthdayspecialitytc-----------------------------------------------------------------122001郭德強(qiáng)男1991-10-23計(jì)算機(jī)48122002謝萱女1992-09-11計(jì)算機(jī)52122004孫婷女1992-02-24計(jì)算機(jī)50

SQLServer數(shù)據(jù)庫(kù)教程(第3版)116.3更新視圖6.3.2插入數(shù)據(jù)【例6.6】向st_cp視圖中插入一條記錄:('2009','董智強(qiáng)','男','1992-11-23','計(jì)算機(jī)',50)。USEstscINSERTINTOst_cpVALUES('2009','董智強(qiáng)','男','1992-11-23','計(jì)算機(jī)',50)使用SELECT語(yǔ)句查詢st_cp視圖的基表studentUSEstscSELECT*FROMstudent

SQLServer數(shù)據(jù)庫(kù)教程(第3版)126.3更新視圖

查詢結(jié)果:stnostnamestsexstbirthdayspecialitytc------------------------------------------------------------------121001李賢友男1991-12-30通信52121002周映雪女1993-01-12通信49121005劉剛男1992-07-05通信50122001郭德強(qiáng)男1991-10-23計(jì)算機(jī)48122002謝萱女1992-09-11計(jì)算機(jī)52122004孫婷女1992-02-24計(jì)算機(jī)50122009董智強(qiáng)男1992-11-23計(jì)算機(jī)50SQLServer數(shù)據(jù)庫(kù)教程(第3版)136.3更新視圖6.3.3修改數(shù)據(jù)【例6.7】將st_cp視圖中學(xué)號(hào)為2009的學(xué)生的總學(xué)分增加2分。USEstscUPDATEst_cpSETtc=tc+2WHEREstno='2009'使用SELECT語(yǔ)句查詢st_cp視圖的基表studentUSEstscSELECT*FROMstudent

SQLServer數(shù)據(jù)庫(kù)教程(第3版)146.3更新視圖

查詢結(jié)果:stnostnamestsexstbirthdayspecialitytc----------------------------------------------------------------121001李賢友男1991-12-30通信52121002周映雪女1993-01-12通信49121005劉剛男1992-07-05通信50122001郭德強(qiáng)男1991-10-23計(jì)算機(jī)48122002謝萱女1992-09-11計(jì)算機(jī)52122004孫婷女1992-02-24計(jì)算機(jī)50122009董智強(qiáng)男1992-11-23計(jì)算機(jī)52SQLServer數(shù)據(jù)庫(kù)教程(第3版)156.3更新視圖6.3.4刪除數(shù)據(jù)【例6.8】刪除st_cp視圖中學(xué)號(hào)為2009的記錄。USEstscDELETEFROMst_cpWHEREstno='2009‘使用SELECT語(yǔ)句查詢st_cp視圖的基表studentUSEstscSELECT*FROMstudent

SQLServer數(shù)據(jù)庫(kù)教程(第3版)166.3更新視圖

查詢結(jié)果:stnostnamestsexstbirthdayspecialitytc----------------------------------------------------------------121001李賢友男1991-12-30通信52121002周映雪女1993-01-12通信49121005劉剛男1992-07-05通信50122001郭德強(qiáng)男1991-10-23計(jì)算機(jī)48122002謝萱女1992-09-11計(jì)算機(jī)52122004孫婷女1992-02-24計(jì)算機(jī)50SQLServer數(shù)據(jù)庫(kù)教程(第3版)176.4修改視圖定義和重命名視圖6.4.1修改視圖定義使用T-SQL的ALTERVIEW語(yǔ)句修改視圖。語(yǔ)法格式:ALTERVIEW[schema_name.]view_name[(column[,...n])][WITH<view_attribute>[,…n]]ASselect_statement[WITHCHECKOPTION]其中view_attribute、select_statement等參數(shù)與CREATEVIEW語(yǔ)句中含義相同。

SQLServer數(shù)據(jù)庫(kù)教程(第3版)186.4修改視圖定義和重命名視圖【例6.9】將例6.1定義的視圖st_comm進(jìn)行修改,取消專業(yè)為通信的要求。USEstscGOALTERVIEWst_commASSELECTstudent.stno,student.stname,ame,score.grade,student.specialityFROMstudent,score,courseWHEREstudent.stno=score.stnoANDo=oWITHCHECKOPTIONGO使用SELECT語(yǔ)句對(duì)修改后的st_comm視圖進(jìn)行查詢:USEstscSELECT*FROMst_comm

SQLServer數(shù)據(jù)庫(kù)教程(第3版)196.4修改視圖定義和重命名視圖查詢結(jié)果:stnostnamecnamegradespeciality------------------------------------------------------------121001李賢友數(shù)字電路92通信121001李賢友微機(jī)原理91通信121001李賢友高等數(shù)學(xué)94通信121002周映雪數(shù)字電路72通信121002周映雪微機(jī)原理65通信121002周映雪高等數(shù)學(xué)73通信121005劉剛數(shù)字電路87通信121005劉剛微機(jī)原理85通信121005劉剛高等數(shù)學(xué)82通信122001郭德強(qiáng)高等數(shù)學(xué)NULL計(jì)算機(jī)122002謝萱數(shù)據(jù)庫(kù)系統(tǒng)94計(jì)算機(jī)122002謝萱高等數(shù)學(xué)95計(jì)算機(jī)122004孫婷數(shù)據(jù)庫(kù)系統(tǒng)81計(jì)算機(jī)122004孫婷高等數(shù)學(xué)86計(jì)算機(jī)

SQLServer數(shù)據(jù)庫(kù)教程(第3版)206.4修改視圖定義和重命名視圖6.4.2重命名視圖語(yǔ)法格式:sp_rename[@objname=]'

溫馨提示

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

最新文檔

評(píng)論

提交評(píng)論