




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第6章視圖和索引操作主編:劉志成本章學(xué)習(xí)導(dǎo)航本章學(xué)習(xí)導(dǎo)航本章學(xué)習(xí)要點(diǎn)(1)視圖的基本知識(shí)。(2)OEM創(chuàng)建、修改、查看和刪除視圖。(3)PL/SQL創(chuàng)建、修改、查看和刪除視圖。(4)使用視圖。(5)索引的概述。(6)OEM創(chuàng)建、修改、查看和刪除索引。(7)創(chuàng)建、修改和刪除聚集。
建議課時(shí):4課時(shí)6.1視圖概述
視圖定義視圖(View)是從一個(gè)或多個(gè)表(其他視圖)中導(dǎo)出的表,其結(jié)構(gòu)和數(shù)據(jù)是建立在對(duì)表的查詢基礎(chǔ)之上的。所以視圖不是真實(shí)存在的基礎(chǔ)表,而是一張?zhí)摫?。視圖所對(duì)應(yīng)的數(shù)據(jù)并不實(shí)際地以視圖結(jié)構(gòu)存儲(chǔ)在數(shù)據(jù)庫(kù)中,而是存儲(chǔ)在視圖所引用的表中。視圖一經(jīng)定義便存儲(chǔ)在數(shù)據(jù)庫(kù)中,與其相對(duì)應(yīng)的數(shù)據(jù)并沒(méi)有像表一樣在數(shù)據(jù)庫(kù)中另外存儲(chǔ)一份,通過(guò)視圖看到的數(shù)據(jù)只是存放在基表中的數(shù)據(jù)。對(duì)視圖的操作與對(duì)表的操作一樣,可以對(duì)其進(jìn)行查詢、修改(有一定的限制)和刪除。當(dāng)對(duì)視圖中的數(shù)據(jù)進(jìn)行修改時(shí),相應(yīng)的基表的數(shù)據(jù)也要發(fā)生變化,同時(shí),如果基表的數(shù)據(jù)發(fā)生變化,則這種變化也可以自動(dòng)地反映到視圖中。
6.1視圖概述
視圖特點(diǎn)(1)視點(diǎn)集中,減少對(duì)象大小視圖讓用戶能夠著重于他們所需要的特定數(shù)據(jù)或所負(fù)責(zé)的特定要求,如用戶可以選擇特定行或特定列。(2)從異構(gòu)源組織數(shù)據(jù)可以在連接兩個(gè)或多個(gè)表的復(fù)雜查詢的基礎(chǔ)上創(chuàng)建視圖,這樣可以將單個(gè)表顯示給用戶。(3)隱藏?cái)?shù)據(jù)的復(fù)雜性,簡(jiǎn)化操作視圖向用戶隱藏了數(shù)據(jù)庫(kù)設(shè)計(jì)的復(fù)雜性,這樣如果開(kāi)發(fā)者改變數(shù)據(jù)庫(kù)設(shè)計(jì),不會(huì)影響到用戶與數(shù)據(jù)庫(kù)交互。另外,用戶可將經(jīng)常使用的連接查詢、嵌套查詢或聯(lián)合查詢定義為視圖。(4)簡(jiǎn)化用戶權(quán)限的管理可以將視圖的權(quán)限授予用戶,而不必將基表中某些列的權(quán)限授予用戶,這樣就簡(jiǎn)化了用戶權(quán)限的定義。
6.2.1課堂案例1——使用OEM管理視圖
掌握Oracle中應(yīng)用OEM創(chuàng)建視圖、修改視圖、查看視圖和刪除視圖的方法和基本步驟。案例學(xué)習(xí)目標(biāo)視圖的定義、OEM創(chuàng)建視圖、OEM修改視圖、OEM查看視圖和OEM刪除視圖
。案例知識(shí)要點(diǎn)6.2.1課堂案例1——使用OEM管理視圖案例完成步驟添加標(biāo)題文字1.使用OEM創(chuàng)建視圖
(1)進(jìn)入OEM后,依次選擇“方案”、“視圖”,進(jìn)入“視圖”頁(yè)面
(2)單擊“創(chuàng)建”按鈕,進(jìn)入“創(chuàng)建視圖”頁(yè)面
添加標(biāo)題文字教師演示講解6.2.1課堂案例1——使用OEM管理視圖案例完成步驟添加標(biāo)題文字2.使用OEM修改視圖(1)重命名視圖重命名視圖在OEM中不能直接完成,只能先刪除原有的視圖,再新建對(duì)應(yīng)的視圖。(2)修改視圖定義
(a)在指定方案的“視圖”頁(yè)面中,選擇要編輯的視圖,單擊“編輯”按鈕,進(jìn)入“編輯視圖”頁(yè)面
(b)在“查詢文本”中可以完成視圖對(duì)應(yīng)的SQL語(yǔ)句的修改操作,修改完成后,單擊“編譯”按鈕可以進(jìn)行編譯
(c)在完成視圖編輯和編譯后,單擊“應(yīng)用”按鈕,完成對(duì)指定視圖的修改操作。添加標(biāo)題文字教師演示講解6.2.1課堂案例1——使用OEM管理視圖案例完成步驟添加標(biāo)題文字3.使用OEM查看視圖(1)在指定方案的“視圖”頁(yè)面中,選擇要編輯的視圖,單擊“查看”按鈕,進(jìn)入“查看視圖”頁(yè)面
(2)在視圖的“查看”頁(yè)面中,可以查看到視圖的名稱(chēng)、視圖的方案、別名、視圖狀態(tài)和查詢文本等
添加標(biāo)題文字教師演示講解6.2.1課堂案例1——使用OEM管理視圖案例完成步驟添加標(biāo)題文字4.使用OEM刪除視圖(1)在指定方案的“視圖”頁(yè)面中,選擇要編輯的視圖,單擊“刪除”按鈕,進(jìn)入“確認(rèn)刪除”頁(yè)面
(2)單擊“是”按鈕,將刪除指定的視圖
添加標(biāo)題文字教師演示講解6.2.2課堂案案例2———使用PL/SQL管理視視圖掌握Oracle中應(yīng)用用PL/SQL創(chuàng)建視視圖、、修改改視圖圖、查查看視視圖和和刪除除視圖圖的基基本語(yǔ)語(yǔ)句和和使用用方法法。案例學(xué)習(xí)習(xí)目標(biāo)PL/SQL創(chuàng)建簡(jiǎn)單單視圖、、PL/SQL創(chuàng)建只讀讀視圖、、PL/SQL創(chuàng)建檢查查視圖、、PL/SQL創(chuàng)建連接接視圖、、PL/SQL創(chuàng)建復(fù)雜雜視圖、、PL/SQL創(chuàng)建強(qiáng)制制視圖、、PL/SQL修改視圖圖、PL/SQL查看視圖圖和PL/SQL刪除視圖圖。案例知識(shí)識(shí)要點(diǎn)6.2.2課堂案例例2——使用PL/SQL管理視圖圖案例完成成步驟添加標(biāo)題題文字1.使用PL/SQL創(chuàng)建視圖圖(1)創(chuàng)建簡(jiǎn)簡(jiǎn)單視圖圖?!纠?-1】】經(jīng)常需要要了解““熱點(diǎn)””商品的的商品號(hào)號(hào)(g_ID)、商品品名稱(chēng)((g_Name)、類(lèi)別別號(hào)(t_ID)、商品品價(jià)格((g_Price)、商品品折扣((g_Discount)和商品品數(shù)量((g_Number)信息,,可以創(chuàng)創(chuàng)建一個(gè)個(gè)“熱點(diǎn)點(diǎn)”商品品的視圖圖。CREATEORREPLACEVIEWSCOTT.vw_HotGoodsASSELECTg_IDAS商品號(hào),g_NameAS商品名稱(chēng)稱(chēng),t_IDAS類(lèi)別號(hào),g_PriceAS價(jià)格,g_DiscountAS折扣,g_NumberAS數(shù)量FROMSCOTT.GoodsWHEREg_Status='熱點(diǎn)';教師演示示講解6.2.2課堂案例例2——使用PL/SQL管理視圖圖案例完成成步驟添加標(biāo)題題文字(2)創(chuàng)建只只讀視圖圖。在創(chuàng)建視視圖時(shí),,可以使使用WITHREADONLY選項(xiàng)創(chuàng)建建只讀視視圖?!纠?-2】】經(jīng)常需要要了解員員工的編編號(hào)(e_ID)、名稱(chēng)稱(chēng)(e_Name)、家庭庭地址((e_Address)、郵政政編碼((e_PostCode)和手機(jī)機(jī)號(hào)碼((e_Mobile)信息息,要要求能能夠通通過(guò)視視圖來(lái)來(lái)查詢?cè)冞@些些信息息(但但不能能通過(guò)過(guò)視圖圖更改改這些些信息息)。。CREATEVIEWSCOTT.vw_emp_readonlyASSELECTe_ID,e_Name,e_Address,e_PostCode,e_MobileFROMSCOTT.employeesWITHREADONLY;教師演演示講講解6.2.2課堂案案例2———使用PL/SQL管理視視圖案例完完成步步驟添加標(biāo)標(biāo)題文文字(3)創(chuàng)建建檢查查視圖圖。在創(chuàng)建建視圖圖時(shí),,可以以使用用WITHCHECKOPTION選項(xiàng)創(chuàng)創(chuàng)建檢檢查視視圖。?!纠?-3】經(jīng)常需需要了了解海海爾公公司商商品的的商品品號(hào)((g_ID)、商商品名名稱(chēng)((g_Name)、商商品價(jià)價(jià)格((g_Price)、商商品折折扣((g_Discount)和商商品數(shù)數(shù)量((g_Number)信息息,可可以創(chuàng)創(chuàng)建一一個(gè)關(guān)關(guān)于海海爾商商品的的視圖圖。CREATEORREPLACEVIEWSCOTT.vw_HaierGoodsASSELECTg_ID,g_Name,g_Price,g_Discount,g_NumberFROMSCOTT.GoodsWHEREg_NameLIKE'%海爾%'WITHCHECKOPTION;教師演演示講講解6.2.2課堂案案例2———使用PL/SQL管理視視圖案例完完成步步驟添加標(biāo)標(biāo)題文文字(4)創(chuàng)建建連接接視圖圖連接視視圖是是指基基于多多個(gè)表表所創(chuàng)創(chuàng)建的的視圖圖,即即定義義視圖圖的查查詢是是一個(gè)個(gè)連接接查詢?cè)?。使使用連連接視視圖的的主要要目的的是為為了簡(jiǎn)簡(jiǎn)化連連接查查詢。?!纠?-4】經(jīng)常需需要了了解商商品的的商品品號(hào)((g_ID)、商商品名名稱(chēng)((g_Name)、類(lèi)類(lèi)別名名稱(chēng)((t_Name)和商商品價(jià)價(jià)格((g_Price)信息息,可可以創(chuàng)創(chuàng)建一一個(gè)關(guān)關(guān)于這這類(lèi)商商品的的視圖圖。CREATEORREPLACEVIEWSCOTT.vw_TNameGoodsASSELECTg_ID,g_Name,t_Name,g_PriceFROMSCOTT.GoodsJOINTypesONGoods.t_ID=Types.t_IDWITHCHECKOPTION教師演演示講講解6.2.2課堂案案例2———使用PL/SQL管理視視圖案例完完成步步驟添加標(biāo)標(biāo)題文文字(5)創(chuàng)建建復(fù)雜雜視圖圖。復(fù)雜視視圖是是指包包含函函數(shù)、、表達(dá)達(dá)式或或分組組數(shù)據(jù)據(jù)的視視圖,,主要要目的的是為為了簡(jiǎn)簡(jiǎn)化查查詢。?!纠?-5】經(jīng)常需需要了了解某某一類(lèi)類(lèi)商品品的類(lèi)類(lèi)別號(hào)號(hào)(t_ID)和該該類(lèi)商商品的的最高高價(jià)格格信息息,可可以創(chuàng)創(chuàng)建一一個(gè)關(guān)關(guān)于這這類(lèi)商商品的的視圖圖。CREATEORREPLACEVIEWSCOTT.vw_MaxPriceGoodsASSELECTt_ID,Max(g_Price)ASMaxPriceFROMSCOTT.GoodsGROUPBYt_ID教師演演示講講解6.2.2課堂案案例2———使用PL/SQL管理視視圖案例完完成步步驟添加標(biāo)標(biāo)題文文字(6)強(qiáng)制制創(chuàng)建建視圖圖正常情情況下下,如如果基基表不不存在在,創(chuàng)創(chuàng)建視視圖就就會(huì)失失敗。。但是是可以以使用用FORCE選項(xiàng)強(qiáng)強(qiáng)制創(chuàng)創(chuàng)建視視圖((前提提是創(chuàng)創(chuàng)建視視圖的的語(yǔ)句句沒(méi)有有語(yǔ)法法錯(cuò)誤誤),,但此此時(shí)該該視圖圖處于于失效效狀態(tài)態(tài)?!纠?-6】創(chuàng)建并并驗(yàn)證證基于于Test表的強(qiáng)強(qiáng)制視視圖(a)在Test表不存存在的的情況況下,,創(chuàng)建建基于于該表表的強(qiáng)強(qiáng)制視視圖vw_TestForce。CREATEFORCEVIEWSCOTT.vw_TestForceASSELECTc1,c2FROMTest;以上語(yǔ)語(yǔ)句執(zhí)執(zhí)行后后,視視圖創(chuàng)創(chuàng)建成成功,,但會(huì)會(huì)出現(xiàn)現(xiàn)警告告信息息,視視圖狀狀態(tài)為為INVALID狀態(tài)。。教師演演示講講解6.2.2課堂案案例2———使用PL/SQL管理視視圖案例完完成步步驟添加標(biāo)標(biāo)題文文字在實(shí)際際應(yīng)用用中,,隨著著查詢?cè)円笄蟮母母淖兒秃蛿?shù)據(jù)據(jù)源的的變化化:更改視視圖只只是改改變數(shù)數(shù)據(jù)字字典中中對(duì)該該視圖圖的定定義信信息,,視圖圖的所所有基基礎(chǔ)對(duì)對(duì)象都都不會(huì)會(huì)受到到任何何影響響;更改視視圖之之后,,依賴(lài)賴(lài)于該該視圖圖的所所有視視圖和和PL/SQL程序都都將變變?yōu)镮NVALID(失效)狀態(tài);;如果以以前的的視圖圖中具具有WITHCHECKOPTION選項(xiàng),,但是是重定定義時(shí)時(shí)沒(méi)有有使用用該選選項(xiàng),,則以以前的的此選選項(xiàng)將將自動(dòng)動(dòng)刪除除。2.使用用PL/SQL修改視視圖(1)重命命名視視圖【例2-7】重命名名用戶戶方案案SCOTT的視圖圖vw_MaxPriceGoods為vw_MaxPrice。renamevw_MaxPriceGoodsTOvw_MaxPrice;教師師演演示示講講解解6.2.2課堂堂案案例例2————使用用PL/SQL管理理視視圖圖案例例完完成成步步驟驟添加加標(biāo)標(biāo)題題文文字字2.使使用用PL/SQL修改改視視圖圖(2)修修改改視視圖圖定定義義【例2-8】】對(duì)于于已已創(chuàng)創(chuàng)建建的的視視圖圖vw_HotGoods,現(xiàn)現(xiàn)在在需需要要?jiǎng)h刪除除其其中中的的折折扣扣((g_Discount)信信息息,,使使之之僅僅包包含含商商品品的的商商品品號(hào)號(hào)((g_ID)、、商商品品名名稱(chēng)稱(chēng)((g_Name)、、類(lèi)類(lèi)別別號(hào)號(hào)((t_ID)、、價(jià)價(jià)格格((g_Price)和和數(shù)數(shù)量量((g_Number)信信息息。。CREATEORREPLACEVIEWSCOTT.vw_HotGoodsASSELECTg_IDAS商品品號(hào)號(hào),g_NameAS商品品名名稱(chēng)稱(chēng),t_IDAS類(lèi)別別號(hào)號(hào),g_PriceAS價(jià)格格,g_NumberAS數(shù)量量FROMSCOTT.GoodsWHEREg_Status='熱點(diǎn)點(diǎn)'教師師演演示示講講解解6.2.2課堂堂案案例例2————使用用PL/SQL管理理視視圖圖案例例完完成成步步驟驟添加加標(biāo)標(biāo)題題文文字字(3)重重新新編編譯譯視視圖圖可以以使使用用PL/SQL的ALTERVIEW語(yǔ)句句重重新新編編譯譯視視圖圖。。ALTERVIEW視圖圖名名COMPILE;當(dāng)視視圖圖依依賴(lài)賴(lài)的的基基表表改改變變后后,,視視圖圖會(huì)會(huì)““失失效效””。。為為了了確確保保這這種種改改變變““不不影影響響””視視圖圖和和依依賴(lài)賴(lài)于于該該視視圖圖的的其其他他對(duì)對(duì)象象,,應(yīng)應(yīng)該該使使用用ALTERVIEW語(yǔ)句句明明確確的的重重新新編編譯譯該該視視圖圖,,從從而而在在運(yùn)運(yùn)行行視視圖圖前前發(fā)發(fā)現(xiàn)現(xiàn)重重新新編編譯譯的的錯(cuò)錯(cuò)誤誤。。視視圖圖被被重重新新編編譯譯后后,,若若發(fā)發(fā)現(xiàn)現(xiàn)錯(cuò)錯(cuò)誤誤,,則則依依賴(lài)賴(lài)該該視視圖圖的的對(duì)對(duì)象象也也會(huì)會(huì)失失效效;;若若沒(méi)沒(méi)有有錯(cuò)錯(cuò)誤誤,,視視圖圖會(huì)會(huì)變變?yōu)闉椤啊坝杏行А薄?。。教師師演演示示講講解解6.2.2課堂堂案案例例2————使用用PL/SQL管理理視視圖圖案例例完完成成步步驟驟添加加標(biāo)標(biāo)題題文文字字3.使使用用PL/SQL查看看視視圖圖Oracle的PL/SQL語(yǔ)句句提提供供了了DESCRIBE命令令用用來(lái)來(lái)查查看看視視圖圖的的信信息息,,其其基基本本語(yǔ)語(yǔ)法法格格式式為為::DESC[RIBE][用戶戶方方案案.]視圖圖名名;【例2-9】】查看看用用戶戶方方案案SCOTT的視視圖圖VW_HOTGOODS的信信息息。。DESCSCOTT.VW_HOTGOODS;教師師演演示示講講解解6.2.2課堂堂案案例例2————使用用PL/SQL管理理視視圖圖案例例完完成成步步驟驟添加加標(biāo)標(biāo)題題文文字字4.使使用用PL/SQL刪除除視視圖圖Oracle的PL/SQL語(yǔ)句提供供了DROPVIEW命令來(lái)刪刪除視圖圖(必須須保證當(dāng)當(dāng)前用戶戶具有DROPANYVIEW的系統(tǒng)權(quán)權(quán)限),,其基本本語(yǔ)法格格式為::DROPVIEW[用戶方案案.]視圖名;【例2-10】刪除用戶戶方案SCOTT的視圖.VW_TNAMEGOODS的信息。。DROPVIEWSCOTT.VW_TNAMEGOODS;教師演示示講解課堂案例例3——使用視圖圖掌握Oracle中通過(guò)視視圖進(jìn)行行查詢和和DML操作的基基本方法法和注意意事項(xiàng)。案例學(xué)習(xí)習(xí)目標(biāo)通過(guò)視圖圖查詢數(shù)數(shù)據(jù)、通通過(guò)視圖圖添加數(shù)數(shù)據(jù)、通通過(guò)視圖圖修改數(shù)數(shù)據(jù)、通通過(guò)視圖圖刪除數(shù)數(shù)據(jù)。案例知識(shí)識(shí)要點(diǎn)課堂案例例3——使用視圖圖案例完成成步驟添加標(biāo)題題文字6.3.1視圖查詢?cè)儾僮鳌纠?-1】】需要了解解價(jià)格在在2000元以上的的促銷(xiāo)商商品信息息,為了了簡(jiǎn)化查查詢操作作,可以以在視圖圖vw_SaleGoods中進(jìn)行查查詢。SELECT*FROMSCOTT.vw_SaleGoodsWHERE價(jià)格>2000;視圖上執(zhí)執(zhí)行查詢?cè)儾僮鞯牡牟襟E和原原理:(1)將針對(duì)對(duì)視圖的的SQL語(yǔ)句與視視圖的定定義語(yǔ)句句(保存在數(shù)數(shù)據(jù)字典典中)“合并”成成一條SQL語(yǔ)句;(2)在內(nèi)存存結(jié)構(gòu)的的共享SQL區(qū)中“解解析”(并優(yōu)化)合并后的的SQL語(yǔ)句;(3)“執(zhí)行行”合并并、解析析后的SQL語(yǔ)句。教師演示示講解課堂案例例3——使用視圖圖案例完成成步驟添加標(biāo)題題文字【例3-2】】需要統(tǒng)計(jì)計(jì)每類(lèi)商商品的平平均價(jià)格格(顯示示類(lèi)別名名和該類(lèi)類(lèi)別的平平均價(jià)格格),為為了簡(jiǎn)化化查詢操操作,可可以在視視圖vw_TNameGoods中進(jìn)行查查詢。SELECTt_Name類(lèi)別名稱(chēng)稱(chēng),AVG(g_Price)平均價(jià)格格FROMSCOTT.vw_TNameGoodsGROUPBYt_Name;教師演示示講解課堂案例例3——使用視圖圖案例完成成步驟添加標(biāo)題題文字6.3.2視圖DML操作當(dāng)向視圖圖中插入入、修改改或者刪刪除數(shù)據(jù)據(jù)時(shí),實(shí)實(shí)際上是是對(duì)視圖圖所引用用的基表表執(zhí)行數(shù)數(shù)據(jù)的插插入、修修改或者者刪除操操作對(duì)于于這些操操作,Oracle有如下的的一些限制:用戶應(yīng)該該具有操操作視圖圖的權(quán)限限,同時(shí)時(shí)具有操操作視圖圖所引用用的基表表或其他他視圖的的權(quán)限;;在一個(gè)語(yǔ)語(yǔ)句中,,一次不不能修改改一個(gè)以以上的視視圖基表表;對(duì)視圖中中所有列列的修改改必須遵遵守視圖圖基表中中所定義義的各種種數(shù)據(jù)約約束條件件;不允許對(duì)對(duì)視圖中中的計(jì)算算列進(jìn)行行修改,,也不允允許對(duì)視視圖定義義中包含含有統(tǒng)計(jì)計(jì)函數(shù)或或者GROUPBY子句的視視圖進(jìn)行行更新操操作。教師演示示講解課堂案例例3——使用視圖圖案例完成成步驟添加標(biāo)題題文字【例3-3】】通過(guò)視圖圖vw_Users向表Users中增加一一個(gè)用戶戶。(1)首先建建立一個(gè)個(gè)視圖vw_Users,要求將將Users表中的英英文的列列名換成成漢字的的列名。。CREATEORREPLACEVIEWSCOTT.vw_UsersASSELECTu_IDAS編號(hào),u_NameAS用戶名,u_TypeAS用戶組,u_PasswordAS用戶密碼碼FROMSCOTT.Users;(2)通過(guò)視視圖vw_Users實(shí)現(xiàn)記錄錄的添加加。INSERTINTOSCOTT.vw_UsersVALUES('05','view','普通','view');教師演示示講解課堂案例例3——使用視圖圖案例完成成步驟添加標(biāo)題題文字【例3-4】】通過(guò)視圖圖vw_Users將用戶““amy””的所屬用用戶組修修改為““查詢””。UPDATESCOTT.vw_UsersSET用戶組='查詢'WHERE用戶名='amy';【例3-5】】試著通過(guò)過(guò)視圖vw_emp_readonly(視圖定定義見(jiàn)6.2.2)刪除名名稱(chēng)為““劉麗麗麗”的員員工。DELETEFROMSCOTT.vw_emp_readonlyWHEREe_Name='劉麗麗';語(yǔ)句執(zhí)行行后,將將會(huì)顯示示“無(wú)法法對(duì)只讀讀視圖進(jìn)進(jìn)行DML操作”的的錯(cuò)誤提提示教師演示示講解6.4索索引概概述索引概念念索引(Index)是一個(gè)個(gè)單獨(dú)的、物理的數(shù)據(jù)結(jié)構(gòu)構(gòu),在這這個(gè)數(shù)據(jù)據(jù)結(jié)構(gòu)中中包括表表中一列列或若干干列的值值以及相相應(yīng)的指指向表中中物理標(biāo)標(biāo)識(shí)這些些值的數(shù)數(shù)據(jù)頁(yè)的的邏輯指指針的集集合。索引提供供了數(shù)據(jù)據(jù)庫(kù)中編排表中中數(shù)據(jù)的內(nèi)部方方法。索索引依賴(lài)賴(lài)于數(shù)據(jù)據(jù)庫(kù)的表表,作為為表的一一個(gè)組成成部分,,一旦創(chuàng)創(chuàng)建后,,由數(shù)據(jù)據(jù)庫(kù)系統(tǒng)統(tǒng)自身進(jìn)進(jìn)行維護(hù)護(hù)。一個(gè)個(gè)表的存存儲(chǔ)是由由兩部分分組成的的,一部部分用來(lái)來(lái)存放表表的數(shù)據(jù)據(jù)頁(yè)面,,另一部部用來(lái)分分存放索索引頁(yè)面面,索引引就存放放在索引引頁(yè)面上上。索引頁(yè)面面相對(duì)于于數(shù)據(jù)頁(yè)頁(yè)面來(lái)說(shuō)說(shuō)小得多多。當(dāng)進(jìn)進(jìn)行數(shù)據(jù)據(jù)檢索時(shí)時(shí),系統(tǒng)統(tǒng)先搜索索索引頁(yè)頁(yè)面,從從中找到到所需數(shù)數(shù)據(jù)的指指針,再再直接通通過(guò)指針針從數(shù)據(jù)據(jù)頁(yè)面中中讀取數(shù)數(shù)據(jù)。從從某種程程度上可可以把數(shù)數(shù)據(jù)庫(kù)看看作一本本書(shū),把索引引看作書(shū)書(shū)的目錄,通過(guò)目目錄查找找書(shū)中的的信息,,顯然比比沒(méi)有目目錄的書(shū)書(shū)更方便便、快捷捷。6.4索索引概概述索引分類(lèi)類(lèi)1.B樹(shù)索引B樹(shù)索引是是最常見(jiàn)見(jiàn)的索引引結(jié)構(gòu),,默認(rèn)建建立的索索引就是是這種類(lèi)類(lèi)型的索索引。6.4索索引概概述索引分類(lèi)類(lèi)2.反向索索引反向索引引是B樹(shù)索引的的一個(gè)分分支,它它的設(shè)計(jì)計(jì)是為了了運(yùn)用在在某些特特定的環(huán)環(huán)境下。。3.降序索索引降序索引引是B樹(shù)的另一一個(gè)衍生生物,它它的變化化就是列列在索引引中的存存儲(chǔ)方式式從升序序變成了了降序,,在某些些場(chǎng)合下下降序索索引將會(huì)會(huì)起作用用。創(chuàng)建建降序索索引時(shí),,Oracle已經(jīng)把數(shù)數(shù)據(jù)都按按降序排排好了。4.位圖索索引位圖索引引主要用用于決策策支持系系統(tǒng)或靜靜態(tài)數(shù)據(jù)據(jù),不支支持行級(jí)級(jí)鎖定。。5.函數(shù)索索引基于函數(shù)數(shù)的索引引有索引引計(jì)算列列的能力力,它易易于使用用并且提提供計(jì)算算好的值值,在不不修改應(yīng)應(yīng)用程序序的邏輯輯上提高高了查詢?cè)冃阅??!?.5.1課堂案例4——使用OEM管理索引掌握Oracle中應(yīng)用OEM創(chuàng)建索引、、修改索引引、查看索索引和刪除除索引的方方法和基本本步驟。案例學(xué)習(xí)目目標(biāo)OEM創(chuàng)建索引圖圖、索引的的選擇、OEM修改索引、、OEM查看索引和和OEM刪除索引。案例知識(shí)要要點(diǎn)6.5.1課堂案例4——使用OEM管理索引案例完成步步驟添加標(biāo)題文文字1.使用OEM創(chuàng)建索引(1)進(jìn)入OEM后,依次選選擇“方案案”、“索索引”,進(jìn)進(jìn)入“索引引頁(yè)面”(2)單擊“創(chuàng)創(chuàng)建”按鈕鈕,進(jìn)入““創(chuàng)建索引引”頁(yè)面,,輸入索引引名稱(chēng)(如如:ix_GoodName),指定用用戶方案為為SCOTT,并指定索索引對(duì)應(yīng)的的表和順序序(3)單擊“確確定”按鈕鈕,如果創(chuàng)創(chuàng)建的索引引沒(méi)有錯(cuò)誤誤,進(jìn)入““確認(rèn)”頁(yè)頁(yè)面,并顯顯示“已成成功創(chuàng)建索索引SCOTT.IX_GOODNAME”消息,并顯顯示當(dāng)前方方案(SCOTT)中的索引引列表教師演示講講解6.5.1課堂案例4——使用OEM管理索引案例完成步步驟添加標(biāo)題文文字2.使用OEM修改索引3.使用OEM查看和刪除除索引教師演示講講解6.5.2課堂案例5——使用PL/SQL管理索引掌握Oracle中應(yīng)用PL/SQL創(chuàng)建索引、、修改索引引、查看索索引和刪除除索引的方方法和基本本步驟。案例學(xué)習(xí)目目標(biāo)CREATEINDEX創(chuàng)建索引、、索引的選選擇、ALTERINDEX修改索引、、通過(guò)數(shù)據(jù)據(jù)字典查看看索引和DROPINDEX刪除索引。案例知識(shí)要要點(diǎn)6.5.2課堂案例5——使用PL/SQL管理索引案例完成步步驟添加標(biāo)題文文字1.使用PL/SQL創(chuàng)建索引【例4-1】創(chuàng)建關(guān)于員員工表的員員工名稱(chēng)列列的唯一索索引。CREATEUNIQUEINDEXSCOTT.ix_EmpNameONSCOTT.Employees(e_Name);【例4-2】建立關(guān)于商商品表的商商品類(lèi)別編編號(hào)列的索索引。CREATEINDEXSCOTT.ix_TypeIDONSCOTT.Goods(t_ID);【例4-3】建立關(guān)于訂訂單明細(xì)表表的訂單編編號(hào)列和產(chǎn)產(chǎn)品編號(hào)列列的復(fù)合索索引。CREATEINDEXSCOTT.ix_OID_GIDONSCOTT.ORDERDETAILS(O_ID,G_ID);教師演示講講解6.5.2課堂案例5——使用PL/SQL管理索引案例完成步步驟添加標(biāo)題文文字2.使用PL/SQL修改索引【例4-4】修改索引ix_EmpName,重新調(diào)整整INITRANS和MAXTRANS參數(shù)的值。。ALTERINDEXSCOTT.ix_EmpNameINITRANS5MAXTRANS10;3.使用PL/SQL刪除索引利用DROPINDEX命令可以刪刪除一個(gè)或或多個(gè)當(dāng)前前數(shù)據(jù)庫(kù)中中的索引。。其語(yǔ)句格格式如下::DROPINDEX'[用戶方案]<表名>.<索引名>'[,...n]【例4-5】刪除員工表表中為員工工名稱(chēng)創(chuàng)建建的唯一索索引IX_EMPNAME。DROPINDEX'SCOTT.EMPLOYEES.IX_EMPNAME';教師演示講講解6.5.2課堂案例5——使用PL/SQL管理索引案例完成步步驟添加標(biāo)題文文字4.查看索引引教師演示講講解課堂案例6——聚集操作掌握Oracle中應(yīng)用聚集集的基本概概念、創(chuàng)建建聚集、修修改聚集和和刪除聚集集的方法和和基本步驟驟。案例學(xué)習(xí)目目標(biāo)創(chuàng)建聚集本本身、創(chuàng)建建聚集中的的表、創(chuàng)建建聚集鍵上上的索引、、修改聚集集和刪除聚聚集。案例知識(shí)要要點(diǎn)課堂案例6——聚集操作聚集概述添加標(biāo)題文文字1.索引聚集集索引聚集是是保存數(shù)據(jù)據(jù)表的一種種可選方案案。索引聚聚集在同一一個(gè)數(shù)據(jù)塊塊中將多個(gè)個(gè)不同表的的相關(guān)行存存儲(chǔ)在一起起,從而改改善相關(guān)操操作的存取取時(shí)間。共共享公共列列的表可以以聚集在該該列的周?chē)鷩瑥亩蛹铀賹?duì)這些些行的存取取。索引聚聚集有利于于聚集數(shù)據(jù)據(jù)上的連接接,因?yàn)樗械臄?shù)據(jù)據(jù)在一個(gè)I/O操作中被檢檢索。2.哈希聚集集哈希聚集類(lèi)類(lèi)似于索引引聚集,但但它使用哈哈希函數(shù)而而非索引來(lái)來(lái)引用聚集集鍵。哈希希聚集在同同一數(shù)據(jù)塊塊中將相關(guān)關(guān)的行存儲(chǔ)儲(chǔ)在一起,,依據(jù)是這這些行的哈哈希函數(shù)結(jié)結(jié)果。在創(chuàng)創(chuàng)建哈希聚聚集時(shí),Oracle為聚集的數(shù)數(shù)據(jù)段分配配初始數(shù)量量的存儲(chǔ)空空間。教師演示講講解課堂案例6——聚集操作案例完成步步驟-創(chuàng)建聚集添加標(biāo)題文文字1.創(chuàng)創(chuàng)建建聚聚集集本本身身【例5-1】】創(chuàng)建建一一個(gè)個(gè)包包含含column0l的聚聚集集testclu。CREATECLUSTERSCOTT.testclu(column0lVARCHAR(20));2.創(chuàng)創(chuàng)建建聚聚集集中中的的表表【例5-2】】創(chuàng)建建聚聚集集為為testclu的兩兩個(gè)個(gè)測(cè)測(cè)試試表表testa和testb。CREATETABLESCOTT.testa(a01VARCHAR(20),a02VARCHAR(20))CLUSTERSCOTT.testclu(a01);CREATETABLESCOTT.testb(b01VARCHAR(20),b02VARCHAR(20))CLUSTERSCOTT.testclu(b01);教師師演演示示講講解解課堂堂案案例例6————聚集集操操作作案例例完完成成步步驟驟添加加標(biāo)標(biāo)題題文文字字3.創(chuàng)創(chuàng)建建聚聚集集鍵鍵上上的的索索引引【例5-3】】為聚聚集集testclu創(chuàng)建建聚聚集集鍵鍵。。CREATEINDEXSCOTT.ix_testcluONCLUSTERSCOTT.testclu;創(chuàng)建建聚聚集集索索引引后后,,就就可可以以使使用用聚聚集集了了。?!纠?-4】】輸入入測(cè)測(cè)試試數(shù)數(shù)據(jù)據(jù)。。--testa表添添加加兩兩條條記記錄錄INSERTINTOSCOTT.testaVALUES('01','01');INSERTINTOSCOTT.testaVALUES('02','02');--testb表添添加加兩兩條條記記錄錄INSERTINTOSCOTT.testbVALUES('01','01');INSERTINTOSCOTT.testbVALUES('02','02');【例5-5】
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO 9335:2025 EN Optics and photonics - Optical transfer function - Principles and procedures of measurement
- 【正版授權(quán)】 ISO/IEC 27562:2024 EN Information technology - Security techniques - Privacy guidelines for fintech services
- 【正版授權(quán)】 ISO 21068-3:2024 EN Chemical analysis of raw materials and refractory products containing silicon-carbide,silicon-nitride,silicon-oxynitride and sialon - Part 3: Determina
- 2025年度數(shù)據(jù)中心電路改造及智能監(jiān)控服務(wù)協(xié)議
- 2025年度金融機(jī)構(gòu)間同業(yè)拆借合同模板
- 2025年度辦公場(chǎng)地租賃及物業(yè)管理合同范本
- 2025年度城市綠化工程項(xiàng)目承包合同范本
- 2025年度城市燃?xì)夤艿腊惭b工程總承包合同范本
- 2025年度餐飲店鋪裝修設(shè)計(jì)與施工合同
- 2025年度戀愛(ài)雙方戀愛(ài)期間責(zé)任劃分合同模板
- 北京海淀人大附2025屆高一數(shù)學(xué)第二學(xué)期期末監(jiān)測(cè)試題含解析
- 2024年廣西職業(yè)院校技能大賽中職組《智慧物流作業(yè)》模塊MC競(jìng)賽樣題
- ALC板施工施工方案及工藝要求
- 人事專(zhuān)員簡(jiǎn)歷模板
- 超聲心動(dòng)圖診斷心肌病臨床應(yīng)用指南解讀
- 地面工程油氣集輸工藝介紹
- 漂流規(guī)劃設(shè)計(jì)方案
- 移動(dòng)取消寬帶委托書(shū)
- 國(guó)際市場(chǎng)營(yíng)銷(xiāo)(高職)教學(xué)教案
- 消防設(shè)施維保服務(wù)投標(biāo)方案
- 城市軌道交通車(chē)輛電氣控制 課件 趙麗 第1-4章 城市軌道交通車(chē)輛電氣控制系統(tǒng)構(gòu)成、城市軌道交通車(chē)輛輔助供電系統(tǒng)、電動(dòng)列車(chē)常用電氣控制系統(tǒng)及其控制方法
評(píng)論
0/150
提交評(píng)論