北大青鳥oracle學(xué)習(xí)資料TP3_第1頁
北大青鳥oracle學(xué)習(xí)資料TP3_第2頁
北大青鳥oracle學(xué)習(xí)資料TP3_第3頁
北大青鳥oracle學(xué)習(xí)資料TP3_第4頁
北大青鳥oracle學(xué)習(xí)資料TP3_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第三章

數(shù)據(jù)庫對象EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET本章任務(wù)務(wù)使用Oracle創(chuàng)建各種種數(shù)據(jù)庫庫對象EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET理解和使使用序列列理解和創(chuàng)創(chuàng)建視圖圖理解和創(chuàng)創(chuàng)建索引引本章目標(biāo)標(biāo)EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET數(shù)據(jù)庫對對象簡介介Oracle數(shù)據(jù)庫對對象又稱稱模式對對象數(shù)據(jù)庫對對象是邏邏輯結(jié)構(gòu)構(gòu)的集合合,最基基本的數(shù)數(shù)據(jù)庫對對象是表表其他數(shù)據(jù)據(jù)庫對象象包括數(shù)據(jù)庫對對象序列視圖索引EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET序列序列是用用于生成成唯一、、連續(xù)序序號的對對象序列可以以是升序序的,也也可以是是降序的的使用CREATESEQUENCE語句創(chuàng)建建序列SQL>>CREATESEQUENCEtoys_seqSTARTWITH10INCREMENTBY10MAXVALUE2000MINVALUE10NOCYCLECACHE10;指定內(nèi)存存中預(yù)先先分配的的序號數(shù)數(shù)EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET訪問序列列通過序列列的偽列列來訪問問序列的的值NEXTVAL返回序列列的下一一個(gè)值CURRVAL返回序列列的當(dāng)前前值SQL>>INSERTINTOtoys((toyid,toyname,toyprice)VALUES((toys_seq.NEXTVAL,‘‘TWENTY’,25));SQL>>INSERTINTOtoys((toyid,toyname,toyprice)VALUES((toys_seq.NEXTVAL,’’MAGICPENCIL’,75));指定序列列的下一一個(gè)值SQL>>SELECTtoys_seq.CURRVALFROMdual;檢索序列列的當(dāng)前前值EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET更改和刪刪除序列列

SQL>>ALTERSEQUENCEtoys__seqMAXVALUE5000CYCLE;;使用ALTERSEQUENCE語句修改改序列,,不能更改改序列的的STARTWITH參數(shù)使用DROPSEQUENCE語句刪除除序列SQL>>DROPSEQUENCEtoys_seq;;EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET視圖視圖以經(jīng)經(jīng)過定制制的方式式顯示來來自一個(gè)個(gè)或多個(gè)個(gè)表的數(shù)數(shù)據(jù)視圖可以以視為““虛擬表表”或““存儲的的查詢””創(chuàng)建視圖圖所依據(jù)據(jù)的表稱稱為“基基表”視圖的優(yōu)優(yōu)點(diǎn)有::提供了另另外一種種級別的的表安全全性隱藏的數(shù)數(shù)據(jù)的復(fù)復(fù)雜性簡化的用用戶的SQL命令隔離基表表結(jié)構(gòu)的的改變通過重命命名列,,從另一一個(gè)角度度提供數(shù)數(shù)據(jù)EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET創(chuàng)建視圖圖3-1studnostudnamestudmarkssubnostudcaste1Rob452Open2James334SC3Jesica405OpenStud_detailsStud_viewstudnostudnamesubno1Rob22James43Jesica5CREATEVIEWstud_viewASSELECTstudno,studname,subnoFROMStud__details;EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET創(chuàng)建視圖圖3--2創(chuàng)建視圖圖的語法法:CREATE[[ORREPLACE]][FORCE]VIEWview_name[[(alias[,,alias]....)]]ASselect__statement[WITHCHECKOPTION]][WITHREADONLY]];EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET創(chuàng)建視圖圖3--3

使用WITHCHECKOPTION選項(xiàng)創(chuàng)建建視圖CREATEORREPLACEVIEWpause_viewASSELECT**FROMorder_masterWHEREostatus=''p''WITHCHECKOPTIONCONSTRAINTchk_pv;使用ORDERBY子句創(chuàng)建建視圖CREATEORREPLACEVIEWord_venASSELECT**FROMvendor_masterORDERBYvenname;創(chuàng)建帶有有錯誤的的視圖CREATEFORCEVIEWvenASSELECT**FROMvenmaster;EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET聯(lián)接視圖圖2--1StudnoStudnameSubmrksSubno1Rob4522James3343Jesica404SubnoSubname2English4Maths5ScienceStud_detailsSub__detailsCREATEVIEWStud_sub_viewASSELECTStudno,Studname,Submrks,SubnameFROMStud__details,Sub_DetailsWHEREStud_details..Subno==Sub_details..Subno;;Stud_sub_view聯(lián)接視圖圖StudnoStudnameSubmrksSubname1Rob45English2James33Maths3Jesica40MathsEvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET聯(lián)接視圖圖2--2創(chuàng)建外聯(lián)聯(lián)接視圖圖CREATEVIEWven__ord_outj__viewASSELECTvm..vencode,venname,orderno,odate,,ostatusFROMvendor_mastervm,order__masteromWHEREvm..vencode==om.vencode((+);;SELECTvm..vencode,venname,orderno,odate,,ostatusFROMvendor_mastervmLEFTOUTERJOINorder_masteromONvm.vencode=om..vencode;EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET視圖上的的DML語句在視圖上上也可以以使用修修改數(shù)據(jù)據(jù)的DML語句,如如INSERT、UPDATE和DELETE視圖上的的DML語句有如如下限制制:只能修改改一個(gè)底底層的基基表如果修改改違反了了基表的的約束條條件,則則無法更更新視圖圖如果視圖圖包含連連接操作作符、DISTINCT關(guān)鍵字、、集合操操作符、、聚合函函數(shù)或GROUPBY子句,則則將無法法更新視視圖如果視圖圖包含偽偽列或表表達(dá)式,,則將無無法更新新視圖EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET索引3-1索引是與與表相關(guān)關(guān)的一個(gè)個(gè)可選結(jié)結(jié)構(gòu)用以提高高SQL語語句執(zhí)行行的性能能減少磁盤盤I/O使用CREATEINDEX語語句創(chuàng)創(chuàng)建索引引在邏輯上上和物理理上都獨(dú)獨(dú)立于表表的數(shù)據(jù)據(jù)Oracle自自動維維護(hù)索引引EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET索引3-2索引有各各種類型型,除了了標(biāo)準(zhǔn)索索引外,,還有一一些特殊殊類型的的索引::索引的類類型基于函數(shù)數(shù)的索引引反向鍵索索引位圖索引引唯一索引引組合索引引EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET索引3-3SQL>>CREATEINDEXitem_indexONitemfile(itemcode)[TABLESPACEtablespace_name];創(chuàng)建標(biāo)準(zhǔn)準(zhǔn)索引重建索引引SQL>>ALTERINDEXitem__indexREBUILD;刪除索引引SQL>>DROPINDEXitem_index;EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET唯一索引引唯一索引引確保在在定義索索引的列列中沒有有重復(fù)值值Oracle自自動在在表的主主鍵列上上創(chuàng)建唯唯一索引引使用CREATEUNIQUEINDEX語語句創(chuàng)建建唯一索索引SQL>>CREATEUNIQUEINDEXitem_indexONitemfile((itemcode));EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET組合索引引組合索引引是在表表的多個(gè)個(gè)列上創(chuàng)創(chuàng)建的索索引索引中列列的順序序是任意意的如果SQL語語句的的WHERE子句句中引用用了組合合索引的的所有列列或大多多數(shù)列,,則可以以提高檢檢索速度度SQL>>CREATEINDEXcomp_indexONitemfile(p_category,itemrate);;EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET反向鍵索索引反向鍵索索引反轉(zhuǎn)轉(zhuǎn)索引列列鍵值的的每個(gè)字字節(jié)通常建立立在值是是連續(xù)增增長的列列上,使使數(shù)據(jù)均均勻地分分布在整整個(gè)索引引上創(chuàng)建索引引時(shí)使用用REVERSE關(guān)鍵鍵字SQL>>CREATEINDEXrev__indexONitemfile((itemcode))REVERSE;;SQL>>ALTERINDEXrev_indexREBUIDNOREVERSE;EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET位圖索引引位圖索引引適合創(chuàng)創(chuàng)建在低低基數(shù)列列上位圖索引引不直接接存儲ROWID,而而是存儲儲字節(jié)位位到ROWID的映射射減少響應(yīng)應(yīng)時(shí)間節(jié)省空間間占用SQL>>CREATEBITMAPINDEXbit_indexONorder_master((orderno));EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET基于函數(shù)數(shù)的索引引基于一個(gè)個(gè)或多個(gè)個(gè)列上的的函數(shù)或或表達(dá)式式創(chuàng)建的的索引表達(dá)式中中不能出出現(xiàn)聚合合函數(shù)不能在LOB類類型的列列上創(chuàng)建建創(chuàng)建時(shí)必必須具有有QUERYREWRITE權(quán)權(quán)限SQL>>CREATEINDEXlowercase__idxONtoys(LOWER(toyname));;SQL>>SELECTtoyidFROMtoysWHERELOWER(toyname)=''doll';;EvaluationWarning:ThedocumentwascreatedwithSpire.Presentationfor.NET獲取索引引的信息息與索引有有

溫馨提示

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

最新文檔

評論

0/150

提交評論