版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
Oracle數(shù)據(jù)庫10g中新的SQL和PL/SQL功能議程新的SQL特性
新的PL/SQL特性
PL/SQL的速度是原來的兩倍
總結(jié)
問答Oracle8OracleSQL
引擎的發(fā)展Oracle8iOracle9iOracle9iR2SQL/XML集成(XMLType、URIType等)OLAPDatetime類型ANSI聯(lián)接CASE表達式XML數(shù)據(jù)庫SQL/XMLW3C標準數(shù)據(jù)挖掘網(wǎng)絡(luò)Web服務(wù)正則表達式本地數(shù)值結(jié)構(gòu)BLAST對象擴展數(shù)據(jù)插件SQL/Java集成interMedia類型數(shù)據(jù)和處理復(fù)雜性新的SQL特性正則表達式
本地數(shù)值結(jié)構(gòu)
LOB增強
集合增強正則表達式簡介起源于數(shù)學(xué)首先在UNIX中計算機化從ed、grep、perl、cgi、web到任何地方多種應(yīng)用程序HTMLFORMS中的驗證生物信息學(xué)服務(wù)器配置數(shù)據(jù)挖掘Oracle正則表達式對數(shù)據(jù)庫的本地支持SQL和PL/SQL中的接口基于POSIX標準與GNU、PERL、Java、Xquery等同步
描述數(shù)據(jù)的模式變?yōu)閿?shù)據(jù)的一個屬性
數(shù)據(jù)庫內(nèi)部強大的字符串處理主要特性POSIX擴展的正則表達式接口REGEXP_LIKE 模式是否匹配?REGEXP_SUBSTR 它與什么匹配?REGEXP_INSTR 它在哪里匹配?REGEXP_REPLACE 替換匹配的記錄。匹配選項語言環(huán)境支持LOB支持REGEXP_LIKE確定模式是否存在。查找名稱‘JonStevens‘的變體John或JonSteven或Stevens或Stephen或StephensSELECTc1FROMt1WHEREREGEXP_LIKE(c1,‘Joh?nSte(ph|v)ens?’);JonStevensJohnStephensJohnStevens和DDL一起使用允許使用過濾器的數(shù)據(jù),并帶檢查約束郵政編碼(ZIPcode)列是VARCHAR2(5),但可以包含任意的5個字符。
使用視圖的查詢子集和格式化將電話號碼格式化為(xxx)xxx-xxxx
創(chuàng)建基于函數(shù)的索引與PL/SQL一起使使用非常強強大的的字符符串處處理功功能src:=REGEXP_REPLACE(src,‘‘<regexp_1>’);src:=REGEXP_REPLACE(src,‘‘<regexp_2>’);src:=REGEXP_REPLACE(src,‘‘<regexp_3>’);可以增增強現(xiàn)現(xiàn)有的的功能能支持PERL縮寫提取第第n個子表表達式式替換大大量代代碼行行可以簡簡化字字符串串處理理函數(shù)數(shù)性能考考慮事事項模式匹匹配可可能很很復(fù)雜雜需要編編譯成成狀態(tài)態(tài)機詞法分分析檢查所所有可可能的的分支支,直直到發(fā)發(fā)現(xiàn)匹匹配每條語語句編編譯一一次對于復(fù)復(fù)雜情情景可可能比比LIKE更快郵政編編碼檢檢查快快5倍倍通常常比等等價的的PL/SQL更快編寫快快速執(zhí)執(zhí)行的的表達達式本地浮浮點數(shù)數(shù)據(jù)類類型兩種新新的數(shù)數(shù)值數(shù)數(shù)據(jù)類類型BINARY_FLOAT,,BINARY_DOUBLE二進制制浮點點運算算的IEEE754標準是許多多其他他標準準(例例如,,Java、、XML模式))和硬硬件平平臺的的一部部分普遍存存在于于商務(wù)務(wù)智能能、生生命科科學(xué)、、工程程/科科學(xué)計計算本地浮浮點數(shù)數(shù)據(jù)類類型與與數(shù)值值數(shù)據(jù)據(jù)類型型比NUMBER類型效效率更更高硬件運運算/數(shù)學(xué)學(xué)運算算快5––10倍倍占用更更少的的內(nèi)存存/磁磁盤空空間((5/9字字節(jié)節(jié)與1––22字字節(jié)))BINARY_DOUBLE值范圍圍更大大(e308與e125))無需類類型轉(zhuǎn)轉(zhuǎn)換((使用用與字字節(jié)順順序無無關(guān)的的存儲儲格式式)本地浮浮點函函數(shù)新的類類型轉(zhuǎn)轉(zhuǎn)換函函數(shù)TO_BINARY_FLOAT、TO_BINARY_DOUBLETO_NUMBERSQL函數(shù)支支持數(shù)值函函數(shù)((sin、cos等)聚合函函數(shù)((sum、avg、stddev等)分析函函數(shù)((sum、avg、stddev等)對SQL、PL/SQL、、Java、XML模式注注冊、、ODP.NET和OCI/OCCI的無縫縫支持持本地浮浮點約約束createtablefloating_point_table1(fltNnullbinary_floatconstraintflt_nullnotnull,dblNnullbinary_doubleconstraintdbl_nullnotnull,fltUnqbinary_floatconstraintflt_unqunique,dblUnqbinary_doubleconstraintdbl_unqunique,fltChkbinary_floatconstraintflt_chkcheck(fltChkisnotNaN),dblChkbinary_doubleconstraintdbl_chkcheck(dblChkisnotinfinite),fltPrmbinary_floatconstraintflt_prmprimarykey);*NaN(不是數(shù)字字)––e.g.0/0,infinity/infinity本地浮點點約束createtablefloating_point_table2(dblPrmbinary_doubleconstraintdbl_prmprimarykey,fltFrnbinary_floatconstraintflt_frnreferencesfloating_point_table1(fltPrm)ondeletecascade);PL/SQL示例使用歐拉拉級數(shù)計計算=sqrt(6*(1+1/2*2+1/3*2+...))使用牛頓頓方法近近似真值值的平方根賦值、加、乘、除、比較、絕絕對值procedureEuler_Pi_Seriesis...beginpi:=one;prev_pi:=zero;prod_over_six:=zero;step:=zero;whilepi-prev_pi>tolerloopprev_pi:=pi;step:=step+one;prod_over_six:=prod_over_six+one/(step*step);prod:=six*prod_over_six;prev_root:=prod;root:=prod/two;whileAbs(root-prev_root)>root_tolerloopprev_root:=root;root:=(root+prod/root)/two;endloop;pi:=root;endloop;endEuler_Pi_Series;subtypeMy_Numberisnumber;zeroconstantMy_Number:=0.0;oneconstantMy_Number:=1.0;twoconstantMy_Number:=2.0;sixconstantMy_Number:=6.0;tolerconstantMy_Number:=0.00000000001;root_tolerconstantMy_Number:=toler/1000.0;rootMy_Number;prev_rootMy_Number;prod_over_sixMy_Number;prodMy_Number;piMy_Number;prev_piMy_Number;stepMy_Number;subtypeMy_Numberisbinary_double;zeroconstantMy_Number:=0.0d;oneconstantMy_Number:=1.0d;twoconstantMy_Number:=2.0d;sixconstantMy_Number:=6.0d;tolerconstantMy_Number:=0.00000000001d;root_tolerconstantMy_Number:=toler/1000.0d;rootMy_Number;prev_rootMy_Number;prod_over_sixMy_Number;prodMy_Number;piMy_Number;prev_piMy_Number;stepMy_Number;PL/SQL示例使用歐拉級數(shù)數(shù)計算近似300,000次次迭代NUMBER花費約27.7秒BINARY_DOUBLE花費約3.7秒提高倍數(shù):約約7倍LOB增強LOB普遍用于存儲儲非結(jié)構(gòu)化的的數(shù)據(jù)(文本本、AVI、基因/蛋白序序列等)LOB性能改善訪問內(nèi)聯(lián)(<4KB)LOB時獲得5倍倍的性能增增益(在9iR2中)
臨時LOB使用引用計算算提供了幾個數(shù)量級的的性能增益在讀取時引用用(ReferenceonRead)在寫入時復(fù)制制(CopyonWrite)超大型LOBTB大小的Lob(8–128TB)DB_BLOCK_SIZE(2–32KB)x(4GB–1)新的DBMS_LOB.GET_STORAGE_LIMIT函數(shù)OCI、JDBC和DBMS_LOB現(xiàn)在支持大于于4GB的LOBOCILobRead2()、OCIWriteAppend2()和OCILobWrite2()函數(shù)為JDBC和DBMS_LOB提供相同的API集合類型增強強用戶定義的類類型、集合類類型和引用類類型簡化了結(jié)結(jié)構(gòu)復(fù)雜的數(shù)數(shù)據(jù)建模集合類型用于于映射實際世世界應(yīng)用程序序中的包含關(guān)關(guān)系例如,一個購購物車包含了了許多商品VARRAY增強VARRAY的類型發(fā)展CREATETYPEemail_list_typASOBJECT(section_noNUMBER,emailsemail_list_arr);/CREATETYPEemail_varray_typASVARRAY(5)OFemail_list_typ;/ALTERTYPEemail_varray_typMODIFYLIMIT100CASCADE;在臨時表中支支持VARRAY列提供應(yīng)用程序序開發(fā)靈活性性嵌套表增強將一個不同的的表空間用于于嵌套表的存存儲表帶嵌套表的列列的表可以在在表空間之間間分配I/O負載CREATETABLEpurchase_orders(order_items_columnorder_items_typ)NESTEDTABLEorder_items_columnSTOREASorder_items_column_nt(TABLESPACEusers);為嵌套表提供供的ANSISQL多集合操作嵌套表存儲無無序的元素集合只包含唯一的的元素多集合可以包含重復(fù)復(fù)的元素嵌套表上的各各種多集合操操作為嵌套表提供供的多集合操操作Cardinality、Collect、MultisetExcept、MultisetIntersection、MultisetUnion、Powermultiset、Powermultiset_by_Cardinality和Set操作查找熱銷商品品集合的強大大工具(市場場指數(shù)總覽分分析)多集合操作示示例createtypecategoriesastableofint;/createtablecarts(c1int,c2categories)
nestedtablec2storeastb1_c2;insertintocartsvalues(1,categories(1,2,3,4));insertintocartsvalues(2,categories(2,4,6));selectt1.c2multisetintersectt2.c2fromcartst1,cartst2wheret1.c1=1andt2.c1=2;categories(2,4)<-frequentset嵌套表比較Equal和NotEqual、In、Submultiset、MemberOf、Empty和Is[Not]ASetSELECT*FROMcustomercWHEREitem_typ(2)MEMBEROFc.freq_set;在PL/SQL中也提供declaretypeTab_tistableofpls_integer;aTab_t:=Tab_t(1,2,3,4,5);beginif3memberofathenShow('member');endif;end;SQL小結(jié)Oracle數(shù)據(jù)庫10gSQL引擎聚合來自不同同的分布式數(shù)數(shù)據(jù)源的數(shù)據(jù)據(jù)網(wǎng)格信息無縫地集成Java、XML和基本數(shù)據(jù)處處理功能一個全面的高高性能和基于于標準(SQL-2003W3C、J2SE、POSIX等)的特性集集簡化的應(yīng)用程程序開發(fā)、部部署和管理RAS、可管理性和安安全性議程新的SQL特性新的PL/SQL特性PL/SQL的速度是原來來的兩倍總結(jié)問答新的PL/SQL特性剛才討論的所所有SQL語言特性FORALL語句中的稀疏疏綁定數(shù)組編譯器警告新的Utl_Mail和Utl_Compress程序包FORALL語句中的稀疏疏綁定數(shù)組您的PL/SQL表最初是密集集的,
例如如,是由BULKCOLLECT填充的您刪除了一些些元素您想將這些元元素插入到某某個表中foralljinINDICESOFsparse_emp_recordsBETWEEN<lb>AND<ub>--optionalinsertintonew_employeesvaluessparse_emp_records(j);FORALL語句中的稀疏疏綁定數(shù)組您有一個PL/SQL表(密集或稀稀疏)您想將這些記記錄的一個指指定的子集插插入到某個表表中foralljinVALUESOFpointer_tabinsertintonew_employeesvaluesemp_records(j);編譯器警告createorreplaceprocedurePisdebuggingboolean:=false;beginifdebuggingthenDbms_Output.Put_Line('debugging');endif;endP;/SP2-0804:ProcedurecreatedwithcompilationwarningsShowErrorsPLW-06002:Unreachablecodealtersessionsetplsql_warnings='ENABLE:ALL';編譯器器警告告createorreplaceprocedureP(iinoutclob)isbegini:='x';endP;/SP2-0804:ProcedurecreatedwithcompilationwarningsShowErrorsPLW-07203:parameter'I'maybenefitfromuseoftheNOCOPYcompilerhintaltersessionsetplsql_warnings='ENABLE:PERFORMANCE';新提供供的程程序包包Utl_Mail它的API反映了了,比比如說說,NetscapeCommunicator的最終終用戶戶的思思維模模式無需SMTP協(xié)議的的知識識(與使用用Utl_Smtp相比))確保簡簡單化化的一一些限限制Utl_Compress提供了了一個個API來壓縮縮和解解壓縮縮RAW或BLOB((服務(wù)器器端))議程新的SQL特性新的PL/SQL特性PL/SQL的速度度是原原來的的兩倍倍總結(jié)問答PL/SQL編譯和和執(zhí)行行101PL/SQL源代碼前端IR==Diana后端對象代碼==MCodePVM全新的的后端端10g引進了了一個個全新新的后后端,,又叫叫做優(yōu)優(yōu)化代代碼生生成器器它全面面地查查看源源代碼碼所表表達的的內(nèi)容容,然然后刪刪除對對最終終的正正確結(jié)結(jié)果確確實沒沒有影影響的的所有有計算算提供了了實現(xiàn)現(xiàn)巨大性能的的潛力力全新的的后端端在9iR2中的ORACLE可執(zhí)行行文件件中,,新的的代碼碼生成成器與與舊的的代碼碼生成成器并并存,一個允允許在在兩者者之間間進行行選擇擇的開開關(guān)兩者都都曾在在回歸歸測試試中使使用因此我我們保保證它它是安安全的的!我們沒沒有將將這個個開關(guān)關(guān)提供供給客客戶重要的的pvm升級刪除了了過時時的指指令增加了了新的的指令令例如one-shotmulticoncatenate簡化了了用于于使用用PVM指令的的系統(tǒng)統(tǒng)實施經(jīng)經(jīng)過調(diào)調(diào)整的的指令令的C例程改進了了本地編譯數(shù)據(jù)庫庫中的的DLL對于數(shù)數(shù)據(jù)庫庫管理理員,,配置置更加加簡單單改進了了生成成的C代碼讓我們們修改改其工工作方方式……PL/SQL源代碼前端IR==Diana后端對象代碼==MCodePVMPL/SQL編譯和和執(zhí)行行101對象代碼==MCode或本地計算機代碼硬件性能實實驗結(jié)結(jié)果由PL/SQL小組進進行的的測試試Beta程序測測試由Oracle的應(yīng)用用程序序部進進行的的測試試由PL/SQL小組進進行的的測試試17個個自自包含含的PL/SQL程序的的基準準測試試套件件設(shè)計用用來實實踐大大范圍圍的結(jié)結(jié)構(gòu)和和編程程習(xí)慣慣一些測測試選選擇用用來演演示特特定的的優(yōu)化化器效效果例如,,從一一個循循環(huán)中中刪除除一個個常量量賦值值由PL/SQL小組進進行的的測試試下一張張幻燈燈片顯顯示了了每一一個程程序在在9iR2INTERPRETED和10gNATIVE中的速速度9iR2中速度度相同同10g中顯示示了兩兩種測測量方方式的的完成成CPU時間之之比由PL/SQL小組進進行的的測試試大多數(shù)數(shù)測試試程序序速度度提高高超過過2倍倍一些測測試程程序速速度提提高遠遠超過過2倍倍速度提提高10倍的程程序使使用BINARY_INTEGER,并擁有有特別別易于于優(yōu)化化的編編程習(xí)習(xí)慣procedurePis/*constrainedbinary_integersubtypes*/apositiven:=1;bpositiven:=1;cpositiven:=1;dpositiven:=1;beginforjin1..i_nof_iterationsloopb:=j/*constraintcheck*/;d:=42/*constantassignmentwithinaloop*/;c:=d+b/*canbecombined...*/;a:=b+c/*...cnotusedexcepthere*/;endloop;endP;由PL/SQL小組組進進行行的的測測試試下一一張張幻幻燈燈片片顯顯示示了了更更多多詳詳細細信信息息基準準是是OracleVersion8.0.6顯示示了了8i9iR2INTERPRETED9iR2NATIVE10gINTERPRETED10gNATIVE速度度提提高高的的倍倍數(shù)數(shù)由PL/SQL小組組進進行行的的測測試試TMI??下一一張張幻幻燈燈片片為為每每一一個個測測試試的的版版本本顯顯示示了了這這17個個程程序序的的集集合合的的統(tǒng)統(tǒng)計計信信息息::中值值最大大和和最最小小值值第1和和第第3四四分分點點(一半半的的觀觀察察都都落落在在第第1和和第第3四四分分點點之之間間)由PL/SQL小組組進進行行的的測測試試8i比8.0.6快快9iR2比8i快NATIVE始終終比比INTERPRETED快在9iR2中在10g中10g始終終比比9iR2快INTERPRETED與INTERPRETEDNATIVE與NATIVE由IFS進行行的的Beta程序序測測試試由IFS進行行的的Beta程序序測測試試IFS應(yīng)用用程程序序基于于web和門門戶戶技技術(shù)術(shù)提提供供用用于于制制造造、、供供應(yīng)應(yīng)鏈鏈管管理理、、客客戶戶關(guān)關(guān)系系管管理理、、服服務(wù)務(wù)供供應(yīng)應(yīng)、、財財務(wù)務(wù)管管理理、、產(chǎn)產(chǎn)品品開開發(fā)發(fā)、、維維護護和和人人力力資資源源管管理理的的60多多種種企企業(yè)業(yè)應(yīng)應(yīng)用用程程序序組組件件由IFS進行行的的Beta程序序測測試試IFS應(yīng)用用程程序序廣廣泛泛使使用用Oracle大多多數(shù)數(shù)業(yè)業(yè)務(wù)務(wù)邏邏輯輯用用PL/SQL編寫寫約3000個個表表約5000個個視視圖圖約5000個個程程序序包包約420萬萬行行PL/SQL代碼碼所有有的的PL/SQL代碼碼都都在在數(shù)數(shù)據(jù)據(jù)庫庫中中執(zhí)執(zhí)行行10gBeta程序序的的IFS結(jié)果果程序1程序22.59x1.76x兩個個模模擬擬典典型型應(yīng)應(yīng)用用程程序序處處理理的的純純PL/SQL測試試程程序序?qū)?0gNATIVE與9iR2INTERPRETED進行行比比較較((在在10gBeta1中))“在最最初初的的測測試試中中看看到到的的測測試試結(jié)結(jié)果果讓讓我我們們非非常常激激動動。。我我們們希希望望在在真真正正的的基基準準測測試試情情景景中中看看到到同同樣樣出出色色的的測測試試結(jié)結(jié)果果。。””10gBeta程序序的的IFS結(jié)果果1.18x使用用大大量量的的SQL對真真正正的的應(yīng)應(yīng)用用程程序序情情
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年甲乙雙方關(guān)于虛擬現(xiàn)實旅游項目投資與合作協(xié)議
- 2024年版:解除婚約財產(chǎn)補償協(xié)議
- 銷售合同范文匯編9篇
- 超細磨剝機行業(yè)行業(yè)發(fā)展趨勢及投資戰(zhàn)略研究分析報告
- 銷售工作計劃范文合集7篇
- 中國襯套閥項目投資可行性研究報告
- 小學(xué)生演講稿范文【6篇】
- 漫畫漢服課程設(shè)計教案
- 六年級安全教育第一課教案
- 幼兒教育隨筆小班15篇
- 急性腎損傷患者的護理措施
- 小學(xué)學(xué)校發(fā)展三年規(guī)劃:傾力打造紅色品牌 努力構(gòu)建和諧學(xué)校
- 2024年全國網(wǎng)絡(luò)安全職工職業(yè)技能競賽備賽試題庫(含答案)
- 2020年會計繼續(xù)教育完整考試題庫1000題(答案)
- 2024年湖北省公務(wù)員錄用考試《行測》真題及答案解析
- 自然辯證法習(xí)題及答案
- 特色農(nóng)產(chǎn)品超市方案
- 2024國有企業(yè)與民營企業(yè)之間的混合所有制改革合同
- 2024年醫(yī)院食堂餐飲獨家承包協(xié)議
- 2025年蛇年年會匯報年終總結(jié)大會模板
- 《稻草人》閱讀題及答案
評論
0/150
提交評論