第3章 管理數(shù)據(jù)庫對(duì)象(理論)_第1頁
第3章 管理數(shù)據(jù)庫對(duì)象(理論)_第2頁
第3章 管理數(shù)據(jù)庫對(duì)象(理論)_第3頁
第3章 管理數(shù)據(jù)庫對(duì)象(理論)_第4頁
第3章 管理數(shù)據(jù)庫對(duì)象(理論)_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第3章管理數(shù)據(jù)庫對(duì)象內(nèi)容回顧VARCHAR2類型為Oracle常用的可變長(zhǎng)度字符類型CLOB數(shù)據(jù)類型用于存儲(chǔ)可變長(zhǎng)度的字符數(shù)據(jù),BLOB數(shù)據(jù)類型用于存儲(chǔ)較大的二進(jìn)制對(duì)象Oracle中的子查詢可以分為單行子查詢、多行子查詢、多列子查詢、相關(guān)子查詢等GRANT命令用于授予對(duì)象權(quán)限,REVOKE命令用于撤銷權(quán)限COMMIT命令用于提交事務(wù),ROLLBACK命令用于回滾事務(wù)TO_CHAR函數(shù)用于將日期或數(shù)字以指定的格式轉(zhuǎn)換為VARCHAR2數(shù)據(jù)類型的值DECODE函數(shù)相當(dāng)于條件語句(IF),它將輸入數(shù)值與函數(shù)中的參數(shù)列表相比較,根據(jù)輸入值返回一個(gè)對(duì)應(yīng)值本章內(nèi)容同義詞序列視圖索引本章目標(biāo)掌握同義詞的使用掌握序列的使用掌握視圖的使用掌握索引的使用1.同義詞1.1方案方案是數(shù)據(jù)庫對(duì)象的集合,為了區(qū)分各個(gè)集合,需要給集合命名,其名稱即為方案名方案中包含各種對(duì)象,如表、視圖、索引、同義詞、序列、數(shù)據(jù)庫鏈接等對(duì)象一般情況下,一個(gè)用戶對(duì)應(yīng)一個(gè)方案,在創(chuàng)建用戶的同時(shí)為該用戶創(chuàng)建一個(gè)與用戶名同名的方案,并作為該用戶的缺省方案如果訪問一個(gè)表時(shí)沒有指明該表屬于哪一個(gè)用戶方案,則系統(tǒng)將會(huì)自動(dòng)地在訪問表前加上缺省的方案名數(shù)據(jù)庫中一個(gè)對(duì)象的完整名稱為“方案名.對(duì)象名”,而不是“用戶名.對(duì)象名”用戶所持有的是系統(tǒng)的權(quán)限及資源,而方案所涵蓋的是各種對(duì)象,包含了表、視圖、序列等對(duì)象的“所在地”,并不包括對(duì)他們的權(quán)限控制。類似于一個(gè)房子(方案),里面放滿了家具(方案對(duì)象),對(duì)這些家具有支配權(quán)的是房子的主人(用戶),而不是房子(方案)同義詞是方案對(duì)象的一個(gè)別名,常用于簡(jiǎn)化對(duì)象和提高對(duì)象訪問的安全性同義詞并不占用實(shí)際存儲(chǔ)空間,只在數(shù)據(jù)庫字典中保存同義詞的定義可以創(chuàng)建同義詞的對(duì)象主要包括表、視圖、同義詞、序列、存儲(chǔ)過程等對(duì)象Oracle中可以創(chuàng)建兩種類型的同義詞:公用同義詞和方案同義詞1.2同義詞概述在開發(fā)數(shù)據(jù)庫應(yīng)用程序時(shí),應(yīng)當(dāng)普遍遵守的規(guī)則是:盡量避免直接引用表、視圖或其他對(duì)象的名稱。否則,當(dāng)DBA改變了這些對(duì)象的名稱時(shí),就必須重新更改并編譯應(yīng)用程序。因此,DBA應(yīng)當(dāng)為開發(fā)人員建立對(duì)象的同義詞,這樣即使基礎(chǔ)表或其他對(duì)象發(fā)生了變動(dòng),也只需要在數(shù)據(jù)庫中對(duì)同義詞進(jìn)行修改,而不必對(duì)應(yīng)用程序作出任何改動(dòng)同義詞:是方案的一個(gè)別名,一個(gè)用戶一個(gè)方案??梢允褂猛x詞的來訪問的對(duì)象包括:

表,視圖,索引,過程,函數(shù),程序包,其他同義詞同義詞的好處: 簡(jiǎn)化SQL語句 隱藏對(duì)象名和所有者 提供對(duì)象的共同訪問公用同義詞(publicsynonym)公用同義詞由一個(gè)特殊的用戶組PUBLIC所擁有,數(shù)據(jù)庫中所有的用戶都可以使用公用同義詞SYS用戶創(chuàng)建的數(shù)據(jù)字典視圖就是公用同義詞的示例方案同義詞(schemasynonym)方案同義詞由創(chuàng)建它的用戶所擁用,也稱為私有同義詞(privatesynonym),用戶可以控制其他用戶是否有權(quán)使用屬于自己的方案同義詞方案同義詞常在應(yīng)用開發(fā)中使用,為應(yīng)用開發(fā)提供命名上的解決方案當(dāng)代碼引用一個(gè)未限定的表、視圖、同義詞、序列、函數(shù)等對(duì)象時(shí),Oracle會(huì)按以下順序來查看這3個(gè)位置是否有被引用的對(duì)象當(dāng)前用戶擁有的對(duì)象由當(dāng)前用戶擁有的一個(gè)方案同義詞公用同義詞如果在這3個(gè)地方都沒有找到該對(duì)象的名稱,將會(huì)出現(xiàn)錯(cuò)誤提示,如“ORA-00942:表或視圖不存在”1.3公用同義詞與方案同義詞創(chuàng)建方案同義詞需要在自己的方案中創(chuàng)建方案同義詞時(shí),用戶必須具有CREATESYNONYM系統(tǒng)權(quán)限需要在其他的方案中創(chuàng)建方案同義詞時(shí),用戶必須具有CREATEANYSYNONYM系統(tǒng)權(quán)限語法CREATE[ORREPLACE]SYNONYMsynonym_name[schema.]object;其中,ORREPLACE表示如果同義詞已經(jīng)存在,將重新覆蓋新建同義詞1.4創(chuàng)建同義詞1.授予SCOTT用戶createsynonym權(quán)限2.創(chuàng)建dept表上的同義詞創(chuàng)建公用同義詞需要?jiǎng)?chuàng)建公用同義詞時(shí),用戶必須具有CREATEPUBLICSYNONYM系統(tǒng)權(quán)限語法CREATE[ORREPLACE]PUBLICSYNONYMsynonym_name[schema.]object;創(chuàng)建同義詞創(chuàng)建dept表上的公用同義詞在Oracle數(shù)據(jù)庫中,公用同義詞已經(jīng)超過2600萬條,查詢不方便,所以在應(yīng)用開發(fā)中應(yīng)盡量避免創(chuàng)建公用同義詞使用方案同義詞方案用戶使用自己的方案同義詞 自己訪問自己的表,沒什么好注意的,一般情況下是方案用戶訪問其他用戶的表,需要方案名.表名,那么這種情況,可以定義方案同義詞,訪問其他用戶的表時(shí)用同義詞即可其他用戶使用另一個(gè)用戶創(chuàng)建的方案同義詞

在方案同義詞前面加上方案名作為前綴的方式來使用其他用戶所創(chuàng)建的方案同義詞,前提條件是要保證訪問者有被訪問表的訪問訪問權(quán)限,例如A用戶訪問B用戶的同義詞,需要A用戶本身就擁有B用戶同義詞中涉及的表的訪問權(quán)限才可以。1.5使用同義詞SCOTT用戶使用自己方案中syn_dept方案同義詞1.授予HR用戶查詢SCOTT方案dept表的權(quán)限2.以HR用戶登錄,訪問SCOTT方案中的syn_dept方案同義詞3.在syn_dept方案同義詞前加上“scott”方案名來訪問1.HR用戶創(chuàng)建關(guān)于SCOTT用戶syn_scott_dept方案同義詞2.HR用戶使用syn_scott_dept方案同義詞權(quán)限不足3.授予HR用戶SCOTT用戶dept表上的SELECT權(quán)限4.HR用戶通過查詢syn_scott_dept來訪問SCOTT方案中的dept表使用公用同義詞與方案同義詞不同,如果使用公用同義詞來訪問其他方案中的對(duì)象,就不需要在該公用同義詞前面添加方案名如果用戶沒有被授予訪問該公用同義詞所引用的對(duì)象的對(duì)象權(quán)限,仍然不能使用該公用同義詞使用同義詞1.以HR用戶登錄,使用公用方案syn_scott_dept來訪問SCOTT方案中的dept表2.撤消HR用戶關(guān)于SCOTT方案中dept表的SELECT對(duì)象權(quán)限3.再次以HR用戶登錄后,使用公用方案syn_scott_dept來訪問SCOTT方案中的dept表失敗1.6刪除同義詞刪除同義詞后,同義詞所引用的基礎(chǔ)對(duì)象不會(huì)受影響刪除方案同義詞用戶能夠刪除自己方案中的任何方案同義詞,但若需要?jiǎng)h除其他用戶方案中的方案同義詞,必須擁有DROPANYSYNONYM系統(tǒng)權(quán)限語法DROPSYNONYMsynonym_name刪除公用同義詞需要?jiǎng)h除公用同義詞時(shí),用戶必須具有DROPPUBLICSYNONYM系統(tǒng)權(quán)限語法DROPPUBLICSYNONYMsynonym_name2.序列序列(SEQUENCE)是一個(gè)命名的順序編號(hào)生成器,它能以串行的方式生成一系列順序整數(shù)與視圖、約束相似,序列也不占用實(shí)際的存儲(chǔ)空間,而只在數(shù)據(jù)字典中保存序列的定義引入序列的理由或序列的主要用途主鍵、外鍵值應(yīng)用需求流水號(hào)應(yīng)用需求序列的生成與定義的內(nèi)容2.1序列概述序列能生成最大38位的整數(shù)2.2創(chuàng)建序列需要在自己的方案中創(chuàng)建序列時(shí),用戶必須具有CREATESEQUENCE系統(tǒng)權(quán)限需要在其他的方案中創(chuàng)建序列時(shí),用戶必須具有CREATEANYSEQUENCE系統(tǒng)權(quán)限CREATESEQUENCEsequnce_name[STARTWITHn1][INCREMENTBYn2][{MAXVALUEn3|NOMAXVALUE}][{MINVALUEn4|NOMINVALUE}][{CACHEn5|NOCACHE}][{CYCLE|NOCYCLE}][ORDER];參數(shù)說明STARTWITH指定要生成的第一個(gè)序列號(hào)INCREMENTBY用于指定序列號(hào)之間的間隔,默認(rèn)值為1MAXVALUE指定序列可以生成的最大值NOMAXVALUE用于指定序列沒有上限MINVALUE指定序列可以生成的最小值NOMINVALUE用于指定序列沒有下限CACHE用于指定在高速緩存中可以預(yù)分配的序列號(hào)個(gè)數(shù),默認(rèn)為20NOCACHE用于指定在高速緩存中不預(yù)先分配序列號(hào)CYCLE用于指定在達(dá)到序列的最大值或最小值后是否循環(huán)ORDER用于指定按順序生成序列號(hào)該序列從300開始,每次增量為1,最大值為999999999,每次生成10個(gè)序列號(hào),到達(dá)最大值后不循環(huán)2.3使用序列NEXTVAL和CURRVAL列NEXTVAL列返回序列生成的下一個(gè)值CURRVAL列返回序列生成的當(dāng)前值序列的初始化在第一次引用CURRVAL列之前,必須引用過一次NEXTVAL列,用于初始化序列的值,否則會(huì)出現(xiàn)錯(cuò)誤提示在SQL語句中使用序列在SQL語句中,可以直接使用引用序列的值1.創(chuàng)建表2.使用序列向表中插入值2.4更改序列需要更改自己方案中的序列時(shí),用戶必須具有ALTERSEQUENCE系統(tǒng)權(quán)限需要更改其他方案中的序列時(shí),用戶必須具有ALTERANYSEQUENCE系統(tǒng)權(quán)限不能修改序列中的起始值,如果要修改起始值,必須刪除序列再重建更改序列包括修改MAXVALUE和MINVALUE修改INCREMENT增量值修改緩存中的序列的數(shù)目ALTERSEQUENCEsequnce_name[INCREMENTBYn2][{MAXVALUEn3|NOMAXVALUE}][{MINVALUEn4|NOMINVALUE}][{CACHEn5|NOCACHE}][{CYCLE|NOCYCLE}]1.顯示seq_id當(dāng)前序列號(hào)2.修改seq_id增量和最大值等信息3.查看修改seq_id后的下一個(gè)序列號(hào)2.5刪除序列需要?jiǎng)h除自己方案中的序列時(shí),用戶必須具有DROPSEQUENCE系統(tǒng)權(quán)限需要?jiǎng)h除其他方案中的序列時(shí),用戶必須具有DROPANYSEQUENCE系統(tǒng)權(quán)限語法DROPSEQUENCEsequence_name3.視圖3.1視圖概述視圖(VIEW)是由SELECT子查詢語句定義的一個(gè)邏輯表,只有定義而無數(shù)據(jù),是一個(gè)“虛表”

視圖是查看和操作表數(shù)據(jù)的一種方法

視圖的優(yōu)點(diǎn)提供各種數(shù)據(jù)表現(xiàn)形式提供某些數(shù)據(jù)的安全性隱藏?cái)?shù)據(jù)的復(fù)雜性簡(jiǎn)化查詢語句執(zhí)行特殊查詢保存復(fù)雜查詢3.2創(chuàng)建視圖需要在當(dāng)前方案中創(chuàng)建視圖時(shí),用戶必須具有CREATEVIEW系統(tǒng)權(quán)限需要在其他方案中創(chuàng)建視圖時(shí),用戶必須具有CREATEANYVIEW系統(tǒng)權(quán)限視圖的擁有者必須被明確授予訪問在視圖定義中所參考的所有基礎(chǔ)對(duì)象的權(quán)限CREATE[ORREPLACE][FORCE]VIEWview_name[(alias1,alias2..)]ASselect_statement[WITHCHECKOPTION[CONSTRAINTconstraint]][WITHREADONLY];參數(shù)說明ORREPLACE如果視圖已經(jīng)存在,該選項(xiàng)將重新創(chuàng)建該視圖FORCE無論基表是否存在,都將創(chuàng)建視圖view_name指定創(chuàng)建視圖時(shí)的名稱alias指定由視圖的查詢所選擇的表達(dá)式或列的別名select_statement創(chuàng)建視圖時(shí)的SELECT語句WITHCHECKOPTION在使用視圖時(shí),檢查涉及的數(shù)據(jù)是否能通過SELECT子查詢的WHERE條件,否則不允許操作并返回錯(cuò)誤提示W(wǎng)ITHREADONLY創(chuàng)建的視圖只能用于查詢,而不能用于更改數(shù)據(jù)。該子句不能與ORDERBY子句同時(shí)存在創(chuàng)建視圖創(chuàng)建普通視圖使用WITHREADONLY選項(xiàng)創(chuàng)建只讀視圖使用WITHCHECKOPTION選項(xiàng)創(chuàng)建約束視圖1.授予創(chuàng)建視圖權(quán)限2.創(chuàng)建視圖3.使用視圖只讀視圖無法更新1.創(chuàng)建withcheckoption的視圖2.插入違反視圖定義的數(shù)據(jù),出錯(cuò)3.3強(qiáng)制創(chuàng)建視圖正常情況下,如果基本表不存在,則創(chuàng)建視圖會(huì)失敗但如果創(chuàng)建視圖的語句沒有語法錯(cuò)誤,則只要使用FORCE選項(xiàng)即可創(chuàng)建該視圖,這種強(qiáng)制創(chuàng)建的視圖被稱為帶有編譯錯(cuò)誤的視圖此時(shí),這種視圖處于失效狀態(tài),不能執(zhí)行該視圖,但之后隨著基礎(chǔ)表的創(chuàng)建,該視圖就可以正常運(yùn)行了1.強(qiáng)制創(chuàng)建視圖2.使用該類視圖時(shí)出現(xiàn)錯(cuò)誤3.4在連接視圖上執(zhí)行DML操作對(duì)于在視圖上進(jìn)行的所有DML操作,最終都會(huì)在基礎(chǔ)表的數(shù)據(jù)上完成對(duì)視圖進(jìn)行更新(包括UPDATE、DELETE、INSERT)操作,則會(huì)受到某些限制,即并非在所有的視圖上都可以執(zhí)行全部的DML操作對(duì)于連接視圖,有些可以更新,但有些不能更新可更新連接視圖不包含集中運(yùn)算符(UNION、UNIONALL、INTERSECT、MINUS等)不包含DISTINCT關(guān)鍵字不包含GROUPBY、ORDERBY、CONNECTBY或STARTWITH子句不包含子查詢不包含分組函數(shù)需要更新的列不是由列表達(dá)式定義的表中所有的NOTNULL列均屬于該視圖還需要遵守更新標(biāo)準(zhǔn),也就是只能對(duì)“鍵值保存表”進(jìn)行更新在連接視圖上執(zhí)行DML操作鍵值保存表如果連接視圖中的一個(gè)基礎(chǔ)表的主鍵(主鍵、唯一鍵)在它的視圖中仍然存在,則稱這個(gè)基礎(chǔ)表為鍵值保存表1.創(chuàng)建連接視圖2.EMPNO列可作為視圖的主鍵,而DEPTNO列不能做為視圖的主鍵3.更新“鍵值保存表”上的列成功4.更新非“鍵值保存表”上的列失敗一般而言,在由父子關(guān)系的兩個(gè)表組成的連接視圖中,子表就是鍵值保存表3.5查詢視圖信息使用USER_UPDATABLE_COLUMNS數(shù)據(jù)字典查詢視圖的可更新列使用USER_VIEWS數(shù)據(jù)字典查詢視圖的定義信息3.6刪除視圖可以刪除當(dāng)前模式中的各種視圖,需要?jiǎng)h除其他方案中的視圖時(shí),必須擁有DROPANYVIEW系統(tǒng)權(quán)限語法DROPVIEWview_name4.索引4.1索引概述通過在表中的一個(gè)或多個(gè)列上創(chuàng)建索引,就能為數(shù)據(jù)的檢索提供快捷的存取路徑,減少查詢時(shí)的硬盤I/O操作,加快數(shù)據(jù)的檢索速度與其他具有獨(dú)立存儲(chǔ)結(jié)構(gòu)的方案對(duì)象類似,索引需要占用實(shí)際的存儲(chǔ)空間一旦創(chuàng)建了索引,在表上執(zhí)行DML操作時(shí),Oracle就會(huì)自動(dòng)地對(duì)索引進(jìn)行維護(hù)如果將表看成一本書,則索引的作用類似于書中的目錄4.2創(chuàng)建索引使用CREATEINDEX命令在一列或若干列的組合上創(chuàng)建索引需要在自己的方案中創(chuàng)建索引時(shí),必須擁有CREATEVIEWINDEX系統(tǒng)權(quán)限需要在其他用戶的方案中創(chuàng)建索引時(shí),必須擁有CREATEANYINDEX系統(tǒng)權(quán)限CREATEINDEXindex_nameontable_name(colummlist)[TABLESPACEtablespace_name]參數(shù)說明index_name指定所創(chuàng)建的索引名table_name指定創(chuàng)建索引的表名column_list指定表上創(chuàng)建索引的列名列表,可以基于多列創(chuàng)建索引tablespace_name為索引指定表空間創(chuàng)建索引即使在表中創(chuàng)建了索引,Oracle也不是機(jī)械地為該表上的所有查詢都使用索引,而是根據(jù)查詢的具體情況決定是否使用索引在運(yùn)行查詢語句之前,Oracle一般需要對(duì)其進(jìn)行優(yōu)化。優(yōu)化的目的是找到運(yùn)行該查詢語句的最佳途徑優(yōu)化器會(huì)將使用全表掃描所需的資源開銷與使用索引所需的資源開銷進(jìn)行對(duì)比,如果使用全表掃描所需的資源開銷更節(jié)省,則不會(huì)使用索引使用全表掃描所需的資源與表中數(shù)據(jù)量的大小密切相關(guān)。一般而言,當(dāng)表中數(shù)據(jù)量達(dá)到一定數(shù)量時(shí),優(yōu)化器才會(huì)考慮使用索引為表創(chuàng)建了索引,Oracle一定會(huì)使用索引嗎?為表創(chuàng)建過多的索引會(huì)降低更新、刪除及插入的性能,因?yàn)镺racle還必須更新與該表關(guān)聯(lián)的索引4.3索引的分類單列索引與復(fù)合索引一個(gè)索引可以由一個(gè)或多個(gè)列組成,用于創(chuàng)建索引的列被稱為“索引列”單列索引是基于單個(gè)列所創(chuàng)建的索引,復(fù)合索引是基于多列所創(chuàng)建的索引createindex索引名on表(列1,列2)唯一索引與非唯一索引唯一索引是索引列值不能重復(fù)的索引,非唯一索引是索引列值可以重復(fù)的索引無論是唯一索引還是非唯一索引,索引列都允許取NULL值默認(rèn)情況下,Oracle創(chuàng)建的索引是非唯一索引語法:createuniqueindex索引名on表(列)標(biāo)準(zhǔn)(B-treeindex,B樹)索引在使用CREATEINDEX語句創(chuàng)建索引時(shí),默認(rèn)創(chuàng)建的就是B樹索引B樹索引可以是單列索引或復(fù)合索引、唯一索引或非唯一索引B樹索引按B樹結(jié)構(gòu)組織并存放索引數(shù)據(jù),B樹索引能夠適應(yīng)多種查詢條件,適合查詢結(jié)果不超過表的10%時(shí)。B樹索引能夠適應(yīng)多種查詢條件,包括使用“=”的精確匹配、使用“LIKE”的模糊匹配、使用“<”或“>”的比較條件。B樹索引的局限性是:當(dāng)查詢數(shù)據(jù)的范圍超過表的10%之后,就不能顯現(xiàn)出B樹索引的良好性能了索引的分類位圖索引基數(shù)是指某個(gè)列可能擁有的不重復(fù)值的個(gè)數(shù)。例如,Sex列的基數(shù)為2(性別只能是男或女),MaritalStatus列的基數(shù)為3(婚姻狀況只能是未婚、已婚、離異)對(duì)于一些基數(shù)很小的列,B樹索引處理方式的效率比較低對(duì)于基數(shù)很小、只存在有限的幾個(gè)固定值的列(如性別、婚姻狀態(tài)、行政區(qū)、職稱),為了加快查詢效率,應(yīng)該在這些列上創(chuàng)建位圖索引當(dāng)某列的基數(shù)與表的總行數(shù)的比例小于1%時(shí),Oracle建議在列上創(chuàng)建位圖索引在表上創(chuàng)建一個(gè)單獨(dú)的位圖索引是無意義的,位圖索引的作用來源于與其他位圖索引的結(jié)合語法:createbitmapindex索引名on表(列)索引的分類函數(shù)索引在Oracle中,不僅能夠?qū)Ρ碇械牧袆?chuàng)建索引,還可以對(duì)包含有列的函數(shù)或表達(dá)式創(chuàng)建索引,這種索引被稱為“函數(shù)索引”

根據(jù)函數(shù)或表達(dá)式的結(jié)果的基數(shù)情況,函數(shù)索引既可以采用普通的B樹索引,也可采用位圖索引select*fromempwhereextract(yearfromhiredate)>1980即使在hiredate列上創(chuàng)建過索引,Oracle也不會(huì)使用該索引,而會(huì)采用全表掃描。因?yàn)閷?duì)列值進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換后,該值不會(huì)存于索引中語法:createindex索引名on表(函數(shù)名(參數(shù)列表));//對(duì)經(jīng)常使用的函數(shù)設(shè)置索引4.5合并、重建索引隨著不斷地對(duì)表進(jìn)行更新操作,表的索引中會(huì)產(chǎn)生越來越多的存儲(chǔ)碎片,這將對(duì)索引的工作效率產(chǎn)生負(fù)面影響用戶可以通過兩種方式來清除碎片:合并索引、重建索引合并索引重建索引重建索引是重新創(chuàng)建一個(gè)新的索引,然后再刪除原索引。如果在索引列上頻繁地執(zhí)行UPDATE或DELETE操作,則應(yīng)該定期重建索引,以提高空間利用率4.6監(jiān)視索引的使用情況已經(jīng)創(chuàng)建的索引是否能夠有效地工作,取決于在執(zhí)行SQL語句的過程中Oracle是否會(huì)使用到該索引Oracle提供了一種比較簡(jiǎn)便的方法來監(jiān)視索引的使用情況,即在v$object_usage數(shù)據(jù)字典動(dòng)態(tài)性能視圖中記錄索引的使用情況步驟使索引處于被監(jiān)視狀態(tài),查詢v$object_usage,了解索引的被監(jiān)視情況設(shè)置被監(jiān)視狀態(tài):alterindex索引名monitoringusage執(zhí)行SQL語句,查看被監(jiān)視索引的使用情況關(guān)閉索引監(jiān)視狀態(tài)語法:alterindex索引名nomonitoringusage1.查詢V$object_usage數(shù)據(jù)字典,查看被監(jiān)視的索引2.修改idx_emp_ename_job索引,使其處于被監(jiān)視狀態(tài)3.再次查詢V

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論