第六章數(shù)據(jù)庫對象_第1頁
第六章數(shù)據(jù)庫對象_第2頁
第六章數(shù)據(jù)庫對象_第3頁
第六章數(shù)據(jù)庫對象_第4頁
第六章數(shù)據(jù)庫對象_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第五章數(shù)據(jù)庫對象數(shù)據(jù)庫對象簡介數(shù)據(jù)庫對象是邏輯結(jié)構(gòu)的集合,最基本的數(shù)據(jù)庫對象是表其他數(shù)據(jù)庫對象包括:數(shù)據(jù)庫對象同義詞序列視圖索引orcl.sys.student實例名.方案名.對象名sys用戶訪問student,只須輸入student,而Orcl中其它的用戶則必須輸入sys.student5.1

同義詞同義詞是現(xiàn)有對象的一個別名。簡化SQL語句隱藏對象的名稱和所有者提供對對象的公共訪問同義詞共有兩種類型:公有同義詞:可被特定數(shù)據(jù)庫所有用戶共享。私有同義詞:只被數(shù)據(jù)庫的各個用戶賬號所有者所擁有.同義詞CREATE[PUBLIC]

SYNONYMemp_synFORsys.emp;別名方案名表名創(chuàng)建同義詞同義詞SQL>connsystem/orcl123已連接。SQL>select*fromstudent;SNOSNAMESSEXSAGESDEPT-----------------------------------------07001johnmale18 ms07002mikemale18 ms07003jane

fmale18 is同義詞應(yīng)用舉例SQL>connsys/orcl123assysdba已連接。SQL>select*fromstudent;select*fromstudent*第1行出現(xiàn)錯誤:ORA-00942:表或視圖不存在SQL>createpublicsynonymstu_syn

forsystem.student;同義詞已創(chuàng)建。SQL>select*fromstu_syn;SNOSNAMESSEXSAGESDEPT-----------------------------------------07001johnmale18 ms07002mikemale18 ms07003jane

fmale18 is同義詞SQL>selectsynonym_name,table_namefrom

dba_synonyms

wheretable_name='SC'SYNONYM_NAMETABLE_NAME---------------------------------------------------SC_SYNSC查看同義詞同義詞對象名必須大寫共有同義詞的擁有者(owner)是publicSQL>selectsynonym_name,table_namefrom

user_synonyms

wheretable_name='SC'SYNONYM_NAMETABLE_NAME---------------------------------------------------SC_SYNSC查看私有同義詞同義詞刪除私有同義詞SQL>DROPSYNONYMemp_syn;刪除公有同義詞SQL>DROPPUBLICSYNONYMemp_syn;同義詞刪除同義詞OEM創(chuàng)建同義詞sc_synsystem.sc同義詞OEM刪除同義詞同義詞5.2序列序列是用于生成唯一、連續(xù)序號的對象序列可以是升序的,也可以是降序的使用CREATESEQUENCE創(chuàng)建序列CREATESEQUENCEname_seq STARTWITH10 INCREMENTBY10 MAXVALUE2000 MINVALUE10 NOCYCLE|CYCLE CACHE10;指定第一個序號從10開始指定序號之間的間隔為10表示序列的最大值為2000表示序列的最小值為10在達到最大值后停止生成下一個值指定內(nèi)存中預先分配的序號數(shù)創(chuàng)建序列序列訪問序列通過序列的偽列來訪問序列的值NEXTVAL返回序列的下一個值CURRVAL返回序列的當前值SQL>selectcid_seq.nextvalfromdual;

NEXTVAL ----------10SQL>/ NEXTVAL ----------20SQL>selectcid_seq.currvalfromdual;CURRVAL ----------20SQL>insertintocourse(cid,cname)values(

cid_seq.NEXTVAL,‘java’);SQL>insertintocourse(cid,cname)values(cid_seq.NEXTVAL,‘c++’);序列

Dual是Oracle中的一個實際存在的表,owner是sys,并有一個同名的公有同義詞,任何用戶均可讀取,常用在沒有目標表的Select語句塊中

查看當前連接用戶SQL>selectuserfromdual;USER------------------------------SYSTEM2.當作計算器用SQL>select1+2fromdual;1+2----------3Dual的用法3.查看當前日期、時間SQL>selectsysdatefromdual;SYSDATE----------6-10月-09SQL>selectto_char(sysdate,'yyyy-mm-ddhh24:mi:ss')asdatetimefromdual;DATETIME-------------------2008-10-0609:50:58修改序列SQL>ALTERSEQUENCEcid_seqMAXVALUE5000CYCLE;ALTERSEQUENCEname_seq

參數(shù)…不能更改序列的STARTWITH參數(shù)序列DROPSEQUENCEname_seqSQL>DROPSEQUENCEcid_seq;刪除序列序列查看序列信息從數(shù)據(jù)字典中獲得序列信息

select*fromdba_sequences;

select*fromuser_sequences;select*fromall_sequences;

序列OEM創(chuàng)建序列序列5.3索引Oracle的索引主要包含兩類:BTree:查詢速度快,適用于高基數(shù)(即列的數(shù)據(jù)相異度大)。列值計算。位圖索引:主要用在OLAP(聯(lián)機數(shù)據(jù)分析)方面,目的是在加快查詢速度時,節(jié)省存儲空間。適用于低基數(shù)列。位算術(shù)運算。5.3索引索引有各種類型,除了標準索引外,還有一些特殊類型的索引:唯一索引組合索引反向鍵索引位圖索引基于函數(shù)的索引標準索引創(chuàng)建標準索引CREATEINDEXindex_name

ONtable_name(col_name)TABLESPACEspace_name;重建索引ALTERINDEXindex_nameREBUILD;刪除索引DROPINDEXindex_name;索引唯一索引唯一索引確保定義索引的列中無重復值自動在表的主鍵列上創(chuàng)建唯一索引創(chuàng)建唯一索引

CREATEUNIQUEINDEXindex_nameONtable_name(col_name);索引組合索引組合索引是在多個列上創(chuàng)建的索引索引中列的順序是任意的如果WHERE子句中引用組合索引的大多數(shù)列,則可以提高檢索速度創(chuàng)建索引CREATEINDEXindex_nameONindex_name(col_1,…col_n);索引反向鍵索引:此索引適合列值連續(xù)(序列)的字段或者某數(shù)據(jù)分布密集的字段.顛倒索引列值的每個字節(jié),使分布均勻創(chuàng)建索引時使用REVERSE關(guān)鍵字反向鍵索引索引原字段反向鍵字段10011001100220011003300110044001

CREATEINDEXrev_index

ONindex_name

(col)REVERSE;ALTERINDEXrev_indexREBUILDNOREVERSE;位圖索引位圖索引適合創(chuàng)建在低基數(shù)(重復值多)的列上位圖采用了壓縮技術(shù)實現(xiàn)磁盤空間縮減減少響應(yīng)時間索引CREATEBITMAPINDEXbit_indexONstudent(ssex);位圖索引的格式

行值1 23 45678910Male1

0000000

1

1Female0

11 1

00

11

00

Null 0 00 0

11

0000搜索表的值,Oracle會用內(nèi)部轉(zhuǎn)換函數(shù)將位圖中的相關(guān)信息轉(zhuǎn)換成rowid來訪問數(shù)據(jù)塊。索引組織表創(chuàng)建索引組織表:CREATETABLEind_org_tab

(vencodeNUMBER(4)PRIMARYKEY,

vennameVARCHAR2(20))

ORGANIZATIONINDEX;索引索引組織表普通表與索引組織表的比較普通表索引組織表ROWID唯一標識行主鍵唯一標識行隱式的ROWID列沒有隱式的ROWID列基于ROWID的訪問基于主鍵的訪問順序掃描返回所有行完全索引掃描返回所有行,并按主鍵順序排列支持分區(qū)不支持分區(qū)索引基于函數(shù)的索引基于一個

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論