Oracle第章視圖和索引操作_第1頁(yè)
Oracle第章視圖和索引操作_第2頁(yè)
Oracle第章視圖和索引操作_第3頁(yè)
Oracle第章視圖和索引操作_第4頁(yè)
Oracle第章視圖和索引操作_第5頁(yè)
已閱讀5頁(yè),還剩42頁(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)介

第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è)面中,可以查看到視圖的名稱、視圖的方案、別名、視圖狀態(tài)和查詢文本等

添加標(biāo)題文字教師演示講解6.2.1課堂案例1——使用OEM管理視圖案例完成步驟添加標(biāo)題文字4.使用OEM刪除視圖(1)在指定方案的“視圖”頁(yè)面中,選擇要編輯的視圖,單擊“刪除”按鈕,進(jìn)入“確認(rèn)刪除”頁(yè)面

(2)單擊“是”按鈕,將刪除指定的視圖

添加標(biāo)題文字教師演示講解課堂案案例2———使用PL/SQL管理視視圖掌握Oracle中應(yīng)用用PL/SQL創(chuàng)建視視圖、、修改改視圖圖、查查看視視圖和和刪除除視圖圖的基基本語(yǔ)語(yǔ)句和和使用用方法法。案例學(xué)學(xué)習(xí)目目標(biāo)PL/SQL創(chuàng)建簡(jiǎn)簡(jiǎn)單視視圖、、PL/SQL創(chuàng)建只只讀視視圖、、PL/SQL創(chuàng)建檢檢查視視圖、、PL/SQL創(chuàng)建連連接視視圖、、PL/SQL創(chuàng)建復(fù)復(fù)雜視視圖、、PL/SQL創(chuàng)建強(qiáng)強(qiáng)制視視圖、、PL/SQL修改視視圖、、PL/SQL查看視視圖和和PL/SQL刪除視視圖。案例知知識(shí)要要點(diǎn)課堂案案例2———使用PL/SQL管理視視圖案例完完成步步驟添加標(biāo)標(biāo)題文文字1.使用用PL/SQL創(chuàng)建視圖(1)創(chuàng)建簡(jiǎn)單單視圖?!纠?-1】經(jīng)常需要了了解“熱點(diǎn)點(diǎn)”商品的的商品號(hào)((g_ID)、商品名名稱(g_Name)、類(lèi)別號(hào)號(hào)(t_ID)、商品價(jià)價(jià)格(g_Price)、商品折折扣(g_Discount)和商品數(shù)數(shù)量(g_Number)信息,可可以創(chuàng)建一一個(gè)“熱點(diǎn)點(diǎn)”商品的的視圖。CREATEORREPLACEVIEWSCOTT.vw_HotGoodsASSELECTg_IDAS商品號(hào),g_NameAS商品名稱,t_IDAS類(lèi)別號(hào),g_PriceAS價(jià)格,g_DiscountAS折扣,g_NumberAS數(shù)量FROMSCOTT.GoodsWHEREg_Status='熱點(diǎn)';教師演示講講解課堂案例2——使用PL/SQL管理視圖案例完成步步驟添加標(biāo)題文文字(2)創(chuàng)建只讀讀視圖。在創(chuàng)建視圖圖時(shí),可以以使用WITHREADONLY選項(xiàng)創(chuàng)建只只讀視圖。?!纠?-2】經(jīng)常需要了了解員工的的編號(hào)(e_ID)、名稱((e_Name)、家庭地地址(e_Address)、郵政編編碼(e_PostCode)和手機(jī)號(hào)號(hào)碼(e_Mobile)信息,要要求能夠通通過(guò)視圖來(lái)來(lái)查詢這些些信息(但但不能通過(guò)過(guò)視圖更改改這些信息息)。CREATEVIEWSCOTT.vw_emp_readonlyASSELECTe_ID,e_Name,e_Address,e_PostCode,e_MobileFROMSCOTT.employeesWITHREADONLY;教師演示講講解課堂案例2——使用PL/SQL管理視圖案例完成步步驟添加標(biāo)題文文字(3)創(chuàng)建檢查查視圖。在創(chuàng)建視圖圖時(shí),可以以使用WITHCHECKOPTION選項(xiàng)創(chuàng)建檢檢查視圖。?!纠?-3】經(jīng)常需要了了解海爾公公司商品的的商品號(hào)((g_ID)、商品名名稱(g_Name)、商品價(jià)價(jià)格(g_Price)、商品折折扣(g_Discount)和商品數(shù)數(shù)量(g_Number)信息,可可以創(chuàng)建一一個(gè)關(guān)于海海爾商品的的視圖。CREATEORREPLACEVIEWSCOTT.vw_HaierGoodsASSELECTg_ID,g_Name,g_Price,g_Discount,g_NumberFROMSCOTT.GoodsWHEREg_NameLIKE'%海爾%'WITHCHECKOPTION;教師演示講講解課堂案例2——使用PL/SQL管理視圖案例完成步步驟添加標(biāo)題文文字(4)創(chuàng)建連接接視圖連接視圖是是指基于多多個(gè)表所創(chuàng)創(chuàng)建的視圖圖,即定義義視圖的查查詢是一個(gè)個(gè)連接查詢?cè)儭J褂眠B連接視圖的的主要目的的是為了簡(jiǎn)簡(jiǎn)化連接查查詢?!纠?-4】經(jīng)常需要了了解商品的的商品號(hào)((g_ID)、商品名名稱(g_Name)、類(lèi)別名名稱(t_Name)和商品價(jià)價(jià)格(g_Price)信息,可可以創(chuàng)建一一個(gè)關(guān)于這這類(lèi)商品的的視圖。CREATEORREPLACEVIEWSCOTT.vw_TNameGoodsASSELECTg_ID,g_Name,t_Name,g_PriceFROMSCOTT.GoodsJOINTypesONGoods.t_ID=Types.t_IDWITHCHECKOPTION教師演示講講解課堂案例2——使用PL/SQL管理視圖案例完成步步驟添加標(biāo)題文文字(5)創(chuàng)建復(fù)雜雜視圖。復(fù)雜視圖是是指包含函函數(shù)、表達(dá)達(dá)式或分組組數(shù)據(jù)的視視圖,主要要目的是為為了簡(jiǎn)化查查詢。【例2-5】經(jīng)常需要了了解某一類(lèi)類(lèi)商品的類(lèi)類(lèi)別號(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教師演示講講解課堂案例2——使用PL/SQL管理視圖案例完成步步驟添加標(biāo)題文文字(6)強(qiáng)制創(chuàng)建建視圖正常情況下下,如果基基表不存在在,創(chuàng)建視視圖就會(huì)失失敗。但是是可以使用用FORCE選項(xiàng)強(qiáng)制創(chuàng)創(chuàng)建視圖((前提是創(chuàng)創(chuàng)建視圖的的語(yǔ)句沒(méi)有有語(yǔ)法錯(cuò)誤誤),但此此時(shí)該視圖圖處于失效效狀態(tài)。【例2-6】創(chuàng)建并驗(yàn)證證基于Test表的強(qiáng)制視視圖(a)在Test表不存在的的情況下,,創(chuàng)建基于于該表的強(qiáng)強(qiáng)制視圖vw_TestForce。CREATEFORCEVIEWSCOTT.vw_TestForceASSELECTc1,c2FROMTest;以上語(yǔ)句執(zhí)執(zhí)行后,視視圖創(chuàng)建成成功,但會(huì)會(huì)出現(xiàn)警告告信息,視視圖狀態(tài)為為INVALID狀態(tài)。教師演示講講解課堂案例2——使用PL/SQL管理視圖案例完成步步驟添加標(biāo)題文文字在實(shí)際應(yīng)用用中,隨著著查詢要求求的改變和和數(shù)據(jù)源的的變化:更改視圖只只是改變數(shù)數(shù)據(jù)字典中中對(duì)該視圖圖的定義信信息,視圖圖的所有基基礎(chǔ)對(duì)象都都不會(huì)受到到任何影響響;更改視圖之之后,依賴賴于該視圖圖的所有視視圖和PL/SQL程序都將變變?yōu)镮NVALID(失效)狀態(tài);如果以前的的視圖中具具有WITHCHECKOPTION選項(xiàng),但是是重定義時(shí)時(shí)沒(méi)有使用用該選項(xiàng),,則以前的的此選項(xiàng)將將自動(dòng)刪除除。2.使用PL/SQL修改視圖(1)重命名視視圖【例2-7】重命名用戶戶方案SCOTT的視圖vw_MaxPriceGoods為vw_MaxPrice。renamevw_MaxPriceGoodsTOvw_MaxPrice;教師演示講講解課堂案例2——使用PL/SQL管理視圖案例完成步步驟添加標(biāo)題文文字2.使用PL/SQL修改視圖(2)修改視圖圖定義【例2-8】對(duì)于已創(chuàng)建建的視圖vw_HotGoods,現(xiàn)在需要要?jiǎng)h除其中中的折扣((g_Discount)信息,使使之僅包含含商品的商商品號(hào)(g_ID)、商品名名稱(g_Name)、類(lèi)別號(hào)號(hào)(t_ID)、價(jià)格((g_Price)和數(shù)量((g_Number)信息。CREATEORREPLACEVIEWSCOTT.vw_HotGoodsASSELECTg_IDAS商品號(hào),g_NameAS商品名稱,t_IDAS類(lèi)別號(hào),g_PriceAS價(jià)格,g_NumberAS數(shù)量FROMSCOTT.GoodsWHEREg_Status='熱點(diǎn)'教師演示講講解課堂案例2——使用PL/SQL管理視圖案例完成步步驟添加標(biāo)題文文字(3)重新編譯譯視圖可以使用PL/SQL的ALTERVIEW語(yǔ)句重新編編譯視圖。。ALTERVIEW視圖名COMPILE;當(dāng)視圖依賴賴的基表改改變后,視視圖會(huì)“失失效”。為為了確保這這種改變““不影響””視圖和依依賴于該視視圖的其他他對(duì)象,應(yīng)應(yīng)該使用ALTERVIEW語(yǔ)句明確的的重新編譯譯該視圖,,從而在運(yùn)運(yùn)行視圖前前發(fā)現(xiàn)重新新編譯的錯(cuò)錯(cuò)誤。視圖圖被重新編編譯后,若若發(fā)現(xiàn)錯(cuò)誤誤,則依賴賴該視圖的的對(duì)象也會(huì)會(huì)失效;若若沒(méi)有錯(cuò)誤誤,視圖會(huì)會(huì)變?yōu)椤坝杏行А?。教師演示講講解課堂案例2——使用PL/SQL管理視圖案例完成步步驟添加標(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;教師演示示講解課堂案例例2——使用PL/SQL管理視圖圖案例完成成步驟添加標(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)題題文字視圖查詢?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)別名稱稱,AVG(g_Price)平均價(jià)格格FROMSCOTT.vw_TNameGoodsGROUPBYt_Name;教師演示示講解課堂案例例3——使用視圖圖案例完成成步驟添加標(biāo)題題文字視圖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))刪除名名稱為““劉麗麗麗”的員員工。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)部方方法。索索引依賴賴于數(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è)冃阅?。。課堂案例4——使用OEM管理索引掌握Oracle中應(yīng)用OEM創(chuàng)建索引、修修改索引、查查看索引和刪刪除索引的方方法和基本步步驟。案例學(xué)習(xí)目標(biāo)標(biāo)OEM創(chuàng)建索引圖、、索引的選擇擇、OEM修改索引、OEM查看索引和OEM刪除索引。案例知識(shí)要點(diǎn)點(diǎn)課堂案例4——使用OEM管理索引案例完成步驟驟添加標(biāo)題文字字1.使用OEM創(chuàng)建索引(1)進(jìn)入OEM后,依次選擇擇“方案”、、“索引”,,進(jìn)入“索引引頁(yè)面”(2)單擊“創(chuàng)建建”按鈕,進(jìn)進(jìn)入“創(chuàng)建索索引”頁(yè)面,,輸入索引名名稱(如: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)中的索引引列表教師演示講講解課堂案例4——使用OEM管理索引案例完成步步驟添加標(biāo)題文文字2.使用OEM修改索引3.使用OEM查看和刪除除索引教師演示講講解課堂案例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)課堂案例5——使用PL/SQL管理索引案例完成步步驟添加標(biāo)題文文字1.使用PL/SQL創(chuàng)建索引【例4-1】創(chuàng)建關(guān)于員員工表的員員工名稱列列的唯一索索引。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);教師演示講講解課堂案例5——使用PL/SQL管理索引案例完成步步驟添加標(biāo)題文文字2.使用PL/SQL修改索引【例4-4】修改索引ix_EmpName,重新調(diào)整整INITRANS和MAXTRANS參數(shù)數(shù)的的值值。。ALTERINDEXSCOTT.ix_EmpNameINITRANS5MAXTRANS10;3.使使用用PL/SQL刪除除索索引引利用用DROPINDEX命令令可可以以刪刪除除一一個(gè)個(gè)或或多多個(gè)個(gè)當(dāng)當(dāng)前前數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)中中的的索索引引。。其其語(yǔ)語(yǔ)句句格格式式如如下下::DROPINDEX'[用戶戶方方案案]<表名>.<索引名>'[,...n]【例4-5】】刪除員工工表中為為員工名名稱創(chuàng)建建的唯一一索引IX_EMPNAME。DROPINDEX'SCOTT.EMPLOYEES.IX_EMPNAME';教師演示示講解課堂案例例5——使用PL/SQL管理索引引案例完成成步驟添加標(biāo)題題文字4.查看索索引教師演示示講解課堂案例例6——聚集操作作掌握Oracle中應(yīng)用聚聚集的基基本概念念、創(chuàng)建建聚集、、修改聚聚集和刪刪除聚集集的方法法和基本本步驟。案例學(xué)習(xí)習(xí)目標(biāo)創(chuàng)建聚集集本身、、創(chuàng)建聚聚集中的的表、創(chuàng)創(chuàng)建聚集集鍵上的的索引、、修改聚聚集和刪刪除聚集集。案例知識(shí)識(shí)要點(diǎn)課堂案例例6———聚集操操作聚集概概述添加標(biāo)標(biāo)題文文字1.索引引聚集集索引聚聚集是是保存存數(shù)據(jù)據(jù)表的的一種種可選選方案案。索索引聚聚集在在同一一個(gè)數(shù)數(shù)據(jù)塊塊中將將多個(gè)個(gè)不同同表的的相關(guān)關(guān)行存存儲(chǔ)在在一起起,從從而改改善相相關(guān)操操作的的存取取時(shí)間間。共共享公公共列列的表表可以以聚集集在該該列的的周?chē)鷩瑥膹亩蛹铀賹?duì)對(duì)這些些行的的存取取。索索引聚聚集有有利于于聚集集數(shù)據(jù)據(jù)上的的連接接,因因?yàn)樗械牡臄?shù)據(jù)據(jù)在一一個(gè)I/O操作中中被檢檢索。。2.哈希希聚集集哈希聚聚集類(lèi)類(lèi)似于于索引引聚集集,但但它使使用哈哈希函函數(shù)而而非索索引來(lái)來(lái)引用用聚集集鍵。。哈希希聚集集在同同一數(shù)數(shù)據(jù)塊塊中將將相關(guān)關(guān)的行行存儲(chǔ)儲(chǔ)在一一起,,依據(jù)據(jù)是這這些行行的哈哈希函函數(shù)結(jié)結(jié)果。。在創(chuàng)創(chuàng)建哈哈希聚聚集時(shí)時(shí),Oracle為聚集集的數(shù)數(shù)據(jù)段段分配配初始始數(shù)量量的存存儲(chǔ)空空間。。教師演演示講講解課堂案案例6———聚集操操作案例完完成步步驟-創(chuàng)建聚聚集添加標(biāo)標(biāo)題文文字1.創(chuàng)建建聚集集本身身【例5-1】創(chuàng)建一一個(gè)包包含column0l的聚集集testclu。CREATECLUSTERSCOTT.testclu(column0lVARCHAR(20));2.創(chuàng)建建聚集集中的的表【例5-2】創(chuàng)建聚聚集為為testclu的兩個(gè)個(gè)測(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)建建聚集集鍵上上的索索引【例5-3】為聚集集testclu創(chuàng)建聚聚集鍵鍵。CREATEINDEXSCOTT.ix_testcluONCLUSTERSCOTT.testclu;創(chuàng)建聚聚集索索引后后,就就可以以使用用聚集集了。。【例5-4】輸入測(cè)測(cè)試數(shù)數(shù)據(jù)。。--testa表添加加兩條條記錄錄INSERTINTOSCOTT.testaVALUES('01','01');INSERTINTOSCOTT.testaVALUES('02','02');--testb表添加加兩條

溫馨提示

  • 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)論