ORACLE數(shù)據(jù)庫(kù)操作手冊(cè)210_第1頁(yè)
ORACLE數(shù)據(jù)庫(kù)操作手冊(cè)210_第2頁(yè)
ORACLE數(shù)據(jù)庫(kù)操作手冊(cè)210_第3頁(yè)
ORACLE數(shù)據(jù)庫(kù)操作手冊(cè)210_第4頁(yè)
ORACLE數(shù)據(jù)庫(kù)操作手冊(cè)210_第5頁(yè)
已閱讀5頁(yè),還剩15頁(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)介

1、ORACLE 數(shù)據(jù)庫(kù)操作作手冊(cè)2.0中國(guó)通信集團(tuán)公公司安徽有限限公司計(jì)費(fèi)業(yè)務(wù)部7年111月修改記錄版本日期編輯者編輯內(nèi)容1.02006/2/10見(jiàn)春蕾形成初稿1.12007/8/31見(jiàn)春蕾根據(jù)實(shí)際情況修修訂部分章節(jié)節(jié)2.02007/111/05見(jiàn)春蕾一、在第一章(數(shù)數(shù)據(jù)庫(kù)使用注注意事項(xiàng))中中增加了關(guān)于于批量更新數(shù)數(shù)據(jù)的大事務(wù)務(wù)分次提交的的要求、客戶戶端的配置方方法、修改密密碼方法;二、在第二章(SSQL編寫(xiě)注注意事項(xiàng))中中增加了關(guān)于于提示(Hiints)的的使用。三、增加了第四四章(跟蹤SSQL執(zhí)行計(jì)計(jì)劃),闡述述了相關(guān)的理理論知識(shí)和SSQL執(zhí)行計(jì)計(jì)劃的跟蹤方方法。目錄TOC o 1-3 h

2、z u HYPERLINK l _Toc ORACLE 數(shù)據(jù)庫(kù)操作作手冊(cè)2.00 PAGEREF _Toc h 1 HYPERLINK l _Toc 第一章數(shù)據(jù)庫(kù)庫(kù)使用注意事事項(xiàng) PAGEREF _Toc h 5 HYPERLINK l _Toc 二、不使用數(shù)據(jù)據(jù)庫(kù)時(shí)請(qǐng)及時(shí)時(shí)關(guān)閉數(shù)據(jù)庫(kù)庫(kù)連接,但是是也不能頻繁繁的連接和斷斷開(kāi) PAGEREF _Toc h 5 HYPERLINK l _Toc 三、執(zhí)行了DMML操作,請(qǐng)請(qǐng)按業(yè)務(wù)規(guī)則則,不要忘記記執(zhí)行COMMMIT或ROLLBBACK。 PAGEREF _Toc h 5 HYPERLINK l _Toc 四、如果是查詢?cè)兒徒y(tǒng)計(jì)不涉涉及到當(dāng)天的的業(yè)

3、務(wù)時(shí),不不要在生產(chǎn)環(huán)環(huán)境里操作,在在BCV庫(kù)中操操作。BCVV每天晚上122點(diǎn)同步一次次,數(shù)據(jù)和用用戶口令、密密碼和生產(chǎn)環(huán)環(huán)境相同。 PAGEREF _Toc h 55 HYPERLINK l _Toc 五、關(guān)聯(lián)表都很很大的查詢和和統(tǒng)計(jì)也盡量量用BCV庫(kù)。 PAGEREF _Toc h 6 HYPERLINK l _Toc 六、生產(chǎn)環(huán)境營(yíng)營(yíng)業(yè)時(shí)間(特特別是營(yíng)業(yè)高高峰時(shí)間,目目前是上午88:00-110:00,下下午3:000-4:000)禁止做大大數(shù)據(jù)量的查查詢和統(tǒng)計(jì),每每個(gè)查詢的執(zhí)執(zhí)行時(shí)間要控控制在分鐘鐘內(nèi)。 PAGEREF _Toc h 6 HYPERLINK l _Toc 七、不要執(zhí)行索

4、索引和表的信信息的收集。 PAGEREF _Toc h 6 HYPERLINK l _Toc 八、編寫(xiě)程序的的時(shí)候,注意意語(yǔ)句句規(guī)范,盡量量使用變量綁綁定,減少共共享池的使用用。 PAGEREF _Toc h 6 HYPERLINK l _Toc 九、按照標(biāo)準(zhǔn)要要求編寫(xiě)pll/sql等等程序,注意意事務(wù)的提交交、回滾和對(duì)對(duì)各種異常情情況的處理。 PAGEREF _Toc h 6 HYPERLINK l _Toc 十、要查看表字字段名或隨機(jī)機(jī)的少量數(shù)據(jù)據(jù)時(shí)候,使用用desc、也也可以使用wwhere11=2或者rowccountn來(lái)查看,而而盡量不要直直接執(zhí)行seelect * froom ta

5、bblenamme,然后killl會(huì)話。 PAGEREF _Toc h 6 HYPERLINK l _Toc 十一、盡量使用用索引,避免免出現(xiàn)全表掃掃描,性能影影響比單機(jī)更更大。 PAGEREF _Toc h 6 HYPERLINK l _Toc 十二、對(duì)分區(qū)表表建立索引時(shí)時(shí),使用loocal選項(xiàng)項(xiàng)。 PAGEREF _Toc h 6 HYPERLINK l _Toc 十三、不要在事事務(wù)中引入TTriggeer,建議在在事務(wù)中實(shí)現(xiàn)現(xiàn)。 PAGEREF _Toc h 6 HYPERLINK l _Toc 十四、批量更新新數(shù)據(jù)的大的的事務(wù)分次提提交。 PAGEREF _Toc h 6 HYPERL

6、INK l _Toc 十五、客戶端的的配置。 PAGEREF _Toc h7 HYPERLINK l _Toc 十六、修改密碼碼。 PAGEREF _Toc h 7 HYPERLINK l _Toc 第二章SQLL編寫(xiě)注意事事項(xiàng) PAGEREF _Toc h 9 HYPERLINK l _Toc 一、SELECCT 子句中中避免使用* PAGEREF _Toc h 9 HYPERLINK l _Toc 二、查找總記錄錄數(shù)時(shí),盡量量不要用coount(*),而要指指定一個(gè)有索索引的字段。 PAGEREF _Toc h 9 HYPERLINK l _Toc 三、將大的歷史史表創(chuàng)建為分分區(qū)表,便于于

7、數(shù)據(jù)轉(zhuǎn)儲(chǔ)和和刪除。 PAGEREF _Toc h 9 HYPERLINK l _Toc 四、使用分區(qū)表表進(jìn)行查詢時(shí)時(shí),盡量把分分區(qū)鍵作為查查詢條件的第第一個(gè)條件。 PAGEREF _Toc h 9 HYPERLINK l _Toc 五、Sequeence采用用cachee/noorrder,如如果在使用ssequennce上的列列建索引,建建議加大caache值。 PAGEREF _Toc h 9 HYPERLINK l _Toc 六、在FROMM子句中包含含多個(gè)表的情情況下,選擇擇記錄條數(shù)最最少的表作為為基礎(chǔ)表,放放在FROMM子句的最后后面。 PAGEREF _Toc h 9 HYPERL

8、INK l _Toc 七、WHEREE子句中的連連接順序 PAGEREF _Toc h 100 HYPERLINK l _Toc 八、在需要無(wú)條條件刪除表中中數(shù)據(jù)時(shí),用用trunccate代替替delette。 PAGEREF _Toc h 11 HYPERLINK l _Toc 九、語(yǔ)句中盡量量使用表的索索引字段,避避免做大表的的全表掃描。 PAGEREF _Toc h 11 HYPERLINK l _Toc 十、帶通配符(%)的likee語(yǔ)句 PAGEREF _Toc h 11 HYPERLINK l _Toc 十一、用EXIISTS替代代IN PAGEREF _Toc h 11 HYPE

9、RLINK l _Toc 十二、用NOTT EXISSTS替代NOT INN PAGEREF _Toc h 12 HYPERLINK l _Toc 十三、盡可能的的用UNIOON-ALLL 替換UNIOON PAGEREF _Toc h 12 HYPERLINK l _Toc 十四、Ordeer by語(yǔ)語(yǔ)句建議 PAGEREF _Toc h 133 HYPERLINK l _Toc 十五、避免使用用NOT PAGEREF _Toc h 13 HYPERLINK l _Toc 十六、使用DEECODE函函數(shù)來(lái)減少處處理時(shí)間 PAGEREF _Toc h 144 HYPERLINK l _Toc

10、十七、刪除重復(fù)復(fù)記錄 PAGEREF _Toc h 14 HYPERLINK l _Toc 十八、如果可以以使用wheere條件,盡盡量不要在hhavingg中限制數(shù)據(jù)據(jù) PAGEREF _Toc h 14 HYPERLINK l _Toc 十九、盡量不要要使數(shù)據(jù)排序序 PAGEREF _Toc h 14 HYPERLINK l _Toc 二十、使用提示示(Hintts) PAGEREF _Toc h 15 HYPERLINK l _Toc 第三章oraccle和sybasse的SQL區(qū)別 PAGEREF _Toc h 15 HYPERLINK l _Toc 一、大小寫(xiě) PAGEREF _To

11、c h 155 HYPERLINK l _Toc 二、限制記錄數(shù)數(shù)量 PAGEREF _Toc h 15 HYPERLINK l _Toc 三、列的選擇 PAGEREF _Toc h 116 HYPERLINK l _Toc 四、連接 PAGEREF _Toc h 16 HYPERLINK l _Toc 五、字符串函數(shù)數(shù) PAGEREF _Toc h 16 HYPERLINK l _Toc 六、日期函數(shù) PAGEREF _Toc h 116 HYPERLINK l _Toc 七、數(shù)據(jù)類型轉(zhuǎn)轉(zhuǎn)換函數(shù): PAGEREF _Toc h 17 HYPERLINK l _Toc 八、空值替代函函數(shù): P

12、AGEREF _Toc h 17 HYPERLINK l _Toc 九、sybasse的wheree語(yǔ)句執(zhí)行 正則符號(hào)號(hào),但是orracle99i不支持。 PAGEREF _Toc h 17 HYPERLINK l _Toc 十、數(shù)字取舍 PAGEREF _Toc h 117 HYPERLINK l _Toc 第四章跟蹤SQQL執(zhí)行計(jì)劃劃 PAGEREF _Toc h 18 HYPERLINK l _Toc 一、理論 PAGEREF _Toc h 18 HYPERLINK l _Toc (一)ORACCLE優(yōu)化器器 PAGEREF _Toc h 18 HYPERLINK l _Toc (二)訪

13、問(wèn)TAABLE的方方式 PAGEREF _Toc h 18 HYPERLINK l _Toc (三)索引訪問(wèn)問(wèn)方式 PAGEREF _Toc h 19 HYPERLINK l _Toc 二、SET TTRACE跟跟蹤sql執(zhí)行計(jì)計(jì)劃 PAGEREF _Toc h 19第一章數(shù)據(jù)庫(kù)庫(kù)使用注意事事項(xiàng)一、對(duì)BOSSS1.5營(yíng)帳帳庫(kù),營(yíng)業(yè)網(wǎng)網(wǎng)址嚴(yán)格按照照要求進(jìn)行配配置,不可隨隨意更換。營(yíng)業(yè)網(wǎng)址要求按按照下面方式式進(jìn)行分配配配置,如果隨隨意更換,會(huì)會(huì)增加營(yíng)業(yè)主主機(jī)間的數(shù)據(jù)據(jù)交互,影響響數(shù)據(jù)庫(kù)性能能,降低營(yíng)業(yè)業(yè)工作效率。合肥、六安、阜阜陽(yáng)、宿州、亳州、淮北北、黃山、銅銅陵配置: http:/10.1447

14、.1322.5:70001/WeebRoott/logiin.jspp或者h(yuǎn)ttp:/main.webA11.amccc/WebRRoot/llogin.jsp蕪湖、蚌埠、淮淮南、馬鞍山山、安慶、滁滁州、宣城、巢湖、池州州,配置如下下:http:/10.1447.1322.6:80001/WeebRoott/logiin.jspp或者h(yuǎn)ttp:/main.webB11.amccc/WebRRoot/llogin.jsp二、不使用數(shù)據(jù)據(jù)庫(kù)時(shí)請(qǐng)及時(shí)時(shí)關(guān)閉數(shù)據(jù)庫(kù)庫(kù)連接,但是是也不能頻繁繁的連接和斷斷開(kāi)數(shù)據(jù)庫(kù)連接也是是數(shù)據(jù)庫(kù)的寶寶貴資源,數(shù)數(shù)據(jù)庫(kù)支持的的數(shù)據(jù)庫(kù)連接接有限,當(dāng)不不需要使用數(shù)數(shù)據(jù)庫(kù)時(shí),請(qǐng)請(qǐng)

15、“優(yōu)雅”的退出數(shù)據(jù)據(jù)庫(kù)吧,如果果能正常退出出,請(qǐng)別“結(jié)束任務(wù)”或KILLL -9。如果正在執(zhí)執(zhí)行SQL的時(shí)候突然異異常終端,請(qǐng)請(qǐng)聯(lián)系數(shù)據(jù)庫(kù)庫(kù)管理員檢查查處理,以防防止數(shù)據(jù)庫(kù)一一直占用該SSQL相關(guān)資資源。三、執(zhí)行了DMML操作,請(qǐng)請(qǐng)按業(yè)務(wù)規(guī)則則,不要忘記執(zhí)行行COMMIIT或ROLLLBACKK。不要只執(zhí)行語(yǔ)句句,而不控制制事務(wù)。當(dāng)你你執(zhí)行一條DDML語(yǔ)句時(shí)時(shí),數(shù)據(jù)庫(kù)會(huì)會(huì)為你分配鎖鎖、回滾段、REDO LOG BBUFFERR等資源。事事務(wù)結(jié)束后,這這些資源才能能得以釋放。四、如果是查詢?cè)兒徒y(tǒng)計(jì)不涉涉及到當(dāng)天的的業(yè)務(wù)時(shí),不不要在生產(chǎn)環(huán)環(huán)境里操作,在BBCV庫(kù)中操作。BCV每天晚上上12點(diǎn)同步步

16、一次,數(shù)據(jù)據(jù)和用戶口令令、密碼和生生產(chǎn)環(huán)境相同同。bcv是一個(gè)節(jié)節(jié)點(diǎn)的數(shù)據(jù)庫(kù)庫(kù),所有的地地市的查詢的的連接配置是是同一個(gè),如如下: YZDBBCCV = (DESCCRIPTIION = (ADDDRESSS_LISTT = (ADDREESS = (PROTTOCOL = TCPP)(HOSST = 110.1533.192.45)(POORT = 1521) ) (COONNECTT_DATAA = (SERVIICE_NAAME = yzdb) ) )五、關(guān)聯(lián)表都很很大的查詢和和統(tǒng)計(jì)也盡量量用BCV庫(kù)庫(kù)。六、生產(chǎn)環(huán)境營(yíng)營(yíng)業(yè)時(shí)間(特特別是營(yíng)業(yè)高高峰時(shí)間,目目前是上午88:00-110:00

17、,下下午3:000-4:000)禁止做大大數(shù)據(jù)量的查查詢和統(tǒng)計(jì),每個(gè)查詢的執(zhí)行時(shí)間要控制在分鐘內(nèi)。七、不要執(zhí)行索索引和表的信息的的收集。八、編寫(xiě)程序的的時(shí)候,注意意語(yǔ)句規(guī)規(guī)范,盡量使使用變量綁定定,減少共享享池的使用。九、按照標(biāo)準(zhǔn)要要求編寫(xiě)pll/sql等等程序,注意意事務(wù)的提交交、回滾和對(duì)對(duì)各種異常情情況的處理。十、要查看表字字段名或隨機(jī)機(jī)的少量數(shù)據(jù)據(jù)時(shí)候,使用用desc、也可以使用用wheree1=2或者者rowcoount 500000AND JJOB = MANAAGERAND 225 (SELECCT COUUNT(*) FROMM EMP WHEREE MGR=E.EMPPNO);

18、(高效,執(zhí)執(zhí)行時(shí)間100.6秒)SELECT *FROM EMMP EWHEREE 25 500000AND JOBB = MMANAGEER;八、在需要無(wú)條條件刪除表中中數(shù)據(jù)時(shí),用用trunccate代替替delette。九、語(yǔ)句中盡量量使用表的索索引字段,避避免做大表的的全表掃描。例如Wheree子句中有聯(lián)聯(lián)接的列,即即使最后的聯(lián)聯(lián)接值為一個(gè)個(gè)靜態(tài)值,也也不會(huì)使用索索引。 select * froom empployeeewhere ffirst_name|last_name =Beiill Clliton; 這條語(yǔ)句沒(méi)有使使用基于laast_naame創(chuàng)建的的索引。 當(dāng)采用下面這種種SQ

19、L語(yǔ)句句的編寫(xiě),OOraclee系統(tǒng)就可以以采用基于llast_nname創(chuàng)建建的索引。 Select * froom empployeee where ffirst_name =Beiill aand laast_naame =Clitoon;十、 帶通配符符(%)的llike語(yǔ)句句例如SQL語(yǔ)句句: sselectt * frrom emmployeee wheere laast_naame liike %clitoon%; 由于于通配符(%)在搜尋詞詞首出現(xiàn),所所以O(shè)raccle系統(tǒng)不不使用lasst_namme的索引。通配符如此此使用會(huì)降低低查詢速度。當(dāng)通配符出出現(xiàn)在字符串串其他位置時(shí)

20、時(shí),優(yōu)化器就就能利用索引引。在下面的的查詢中索引引得到了使用用: sselectt * frrom emmployeee wheere laast_naame liike cc%;十一、用EXIISTS替代代IN在許多基于基礎(chǔ)礎(chǔ)表的查詢中中,為了滿足足一個(gè)條件,往往需要對(duì)對(duì)另一個(gè)表進(jìn)進(jìn)行聯(lián)接.在在這種情況下下, 使用EEXISTSS(或NOTT EXISSTS)通常常將提高查詢?cè)兊男?低效: SELECT * FROM EMMP (基礎(chǔ)礎(chǔ)表) WHERE EEMPNO 0 AND DEPPTNO IIN (SEELECT DEPTNNO FROM DEEPT WHERE LLOC =MELB

21、) 高效: SELECT * FROM EMMP (基礎(chǔ)礎(chǔ)表) WHERE EEMPNO 0 AND EXIISTS (SELECCT X FROM DEEPT WHERE DDEPT.DDEPTNOO = EMMP.DEPPTNO AND LOCC = MELB)十二、用NOTT EXISSTS替代NNOT INN在子查詢中,NNOT INN子句將執(zhí)行行一個(gè)內(nèi)部的的排序和合并并. 無(wú)論在在哪種情況下下,NOT IN都是最最低效的 (因?yàn)樗鼘?duì)子子查詢中的表表執(zhí)行了一個(gè)個(gè)全表遍歷). 為了避避免使用NOOT IN ,我們可以以把它改寫(xiě)成成外連接(OOuter Joinss)或NOTT EXISS

22、TS. 例如: SELECT FROM EMMP WHERE DDEPT_NNO NOTT IN (SELECCT DEPPT_NO FROM DEEPT WHERE DDEPT_CCAT=AA); 為了提高效率.改寫(xiě)為: (方法一: 高高效) SELECT . FROM EMMP A,DDEPT BB WHERE AA.DEPTT_NO = B.DEEPT(+) AND B.DDEPT_NNO IS NULL AND B.DDEPT_CCAT(+) = A (方法二: 最最高效) SELECT . FROM EMMP E WHERE NNOT EXXISTS (SELEECT X FROM

23、DEEPT D WHERE DD.DEPTT_NO = E.DEEPT_NOO AND DEPPT_CATT = A);十三、盡可能的的用UNIOON-ALLL 替換UNNION當(dāng)SQL語(yǔ)句需需要UNIOON兩個(gè)查詢?cè)兘Y(jié)果集合時(shí)時(shí),這兩個(gè)結(jié)結(jié)果集合會(huì)以以UNIONN-ALL的的方式被合并并, 然后在在輸出最終結(jié)結(jié)果前進(jìn)行排排序. 如果用UNIOON ALLL替代UNIION, 這這樣排序就不不是必要了. 效率就會(huì)會(huì)因此得到提提高. 舉例: 低效: SELECT ACCT_NUM, BALANNCE_AMMT FROM DEEBIT_TTRANSAACTIONNS WHERE TTRAN_DDA

24、TE = 31-DEC-995 UNIONSELECT ACCT_NUM, BALANNCE_AMMT FROM DEEBIT_TTRANSAACTIONNS WHERE TTRAN_DDATE = 31-DEC-995 高效: SELECT ACCT_NUM, BALANNCE_AMMT FROM DEEBIT_TTRANSAACTIONNS WHERE TTRAN_DDATE = 31-DEC-995 UNION AALL SELECT ACCT_NUM, BALANNCE_AMMT FROM DEEBIT_TTRANSAACTIONNS WHERE TTRAN_DDATE = 31-DE

25、C-995十四、Ordeer by語(yǔ)語(yǔ)句建議ORDER BBY語(yǔ)句決定定了Oraccle如何將將返回的查詢?cè)兘Y(jié)果排序。Orderr by語(yǔ)句句對(duì)要排序的的列沒(méi)有什么么特別的限制制,也可以將將函數(shù)加入列列中(象聯(lián)接接或者附加等等)。任何在在Orderr by語(yǔ)句句的非索引項(xiàng)項(xiàng)或者有計(jì)算算表達(dá)式都將將降低查詢速速度。 仔細(xì)檢查ordder byy語(yǔ)句以找出出非索引項(xiàng)或或者表達(dá)式,它它們會(huì)降低性性能。解決這這個(gè)問(wèn)題的辦辦法就是重寫(xiě)寫(xiě)orderr by語(yǔ)句句以使用索引引,也可以為為所使用的列列建立另外一一個(gè)索引,同同時(shí)應(yīng)絕對(duì)避避免在ordder byy子句中使用用表達(dá)式。十五、避免使用用NOT在查詢時(shí)

26、經(jīng)常在在wheree子句使用一一些邏輯表達(dá)達(dá)式,如大于于、小于、等等于以及不等等于等等,也也可以使用aand(與)、or(或)以以及not(非非)。NOTT可用來(lái)對(duì)任任何邏輯運(yùn)算算符號(hào)取反。下面是一個(gè)個(gè)NOT子句句的例子:. wheree not (stattus =VALIDD) 如果要使用用NOT,則則應(yīng)在取反的的短語(yǔ)前面加加上括號(hào),并并在短語(yǔ)前面面加上NOTT運(yùn)算符。NNOT運(yùn)算符符包含在另外外一個(gè)邏輯運(yùn)運(yùn)算符中,這這就是不等于于()運(yùn)運(yùn)算符。換句句話說(shuō),即使使不在查詢wwhere子子句中顯式地地加入NOTT詞,NOTT仍在運(yùn)算符符中,見(jiàn)下例例:. wheree stattus INVA

27、ALID; 再看看下面這個(gè)例例子:sselectt * frrom emmployeee wheere saalary30000; 對(duì)對(duì)這個(gè)查詢,可可以改寫(xiě)為不不使用NOTT:seelect * froom empployeee wherre sallary33000; 雖然這這兩種查詢的的結(jié)果一樣,但但是第二種查查詢方案會(huì)比比第一種查詢?cè)兎桨父煨┬?。第二種查查詢?cè)试SOrracle對(duì)對(duì)salarry列使用索索引,而第一一種查詢則不不能使用索引引。十六、使用DEECODE函函數(shù)來(lái)減少處處理時(shí)間使用DECODDE函數(shù)可以以避免重復(fù)掃掃描相同記錄錄或重復(fù)連接接相同的表. 例如: SELECT CO

28、UNTT(*),SSUM(SAAL) FROMEMMP WHERE DDEPT_NNO = 00020 AND ENAAME LIIKESMITHH%; SELECT COUNTT(*),SSUM(SAAL) FROMEMMP WHERE DDEPT_NNO = 00030 AND ENAAME LIIKESMITHH%; 可以用DECOODE函數(shù)高高效地得到相相同結(jié)果 SELECT COUNTT(DECOODE(DEEPT_NOO,00200,X,NULL) D00020_COOUNT, COUNT(DDECODEE(DEPTT_NO,00030,X,NUULL) D00300_COUNNT

29、, SUM(DECCODE(DDEPT_NNO,00220,SALL,NULLL) D00020_SSAL, SUM(DECCODE(DDEPT_NNO,00330,SALL,NULLL) D00030_SSAL FROM EMMP WHEERE ENNAME LLIKE SMITHH%; 類似的,DECCODE函數(shù)數(shù)也可以運(yùn)用用于GROUUP BY 和ORDEER BY子子句中.十七、刪除重復(fù)復(fù)記錄DELETE FROM EMP EE WHERE EE.ROWIID (SELECCT MINN(X.ROOWID) FROM EMMP X WHERE XX.EMP_NO = E.EMPP_NO

30、); 十八、如果可以以使用wheere條件,盡盡量不要在hhavingg中限制數(shù)據(jù)據(jù)十九、盡量不要要使數(shù)據(jù)排序序引起排序的條件件- Orderr by- Groupp by- Unionn,inteersectt,minuus- Distiinct二十、使用提示示(Hintts)對(duì)于表的訪問(wèn),可以使用兩兩種Hintts:FULLL 和 RROWID FULL hiint 告訴訴ORACLLE使用全表表掃描的方式式訪問(wèn)指定表表. 例如: SELECT /*+ FFULL(EEMP) */ * FROM EMMP WHERE EEMPNO = 78993; ROWID hhint 告告訴ORACC

31、LE使用TTABLE ACCESSS BY ROWIDD的操作訪問(wèn)問(wèn)表. 通常, 你需要要采用TABBLE ACCCESS BY ROOWID的方方式特別是當(dāng)當(dāng)訪問(wèn)大表的的時(shí)候, 使使用這種方式式, 你需要要知道ROIIWD的值或或者使用索引引。 如果一個(gè)大表沒(méi)沒(méi)有被設(shè)定為為緩存(CAACHED)表而你希望望它的數(shù)據(jù)在在查詢結(jié)束是是仍然停留在在SGA中,你就可以使使用CACHHE hinnt 來(lái)告訴訴優(yōu)化器把數(shù)數(shù)據(jù)保留在SSGA中。 通常CAACHE hhint 和和 FULLL hintt 一起使用用。例如: SELECT /*+ FFULL(WWORKERR) CACCHE(WOORKER

32、)*/ * FROM WOORK; 索引hint 告訴ORAACLE使用用基于索引的的掃描方式. 你不必說(shuō)說(shuō)明具體的索索引名稱 例如: SELECT /*+ IINDEX(a inddex_naame) */ LODDGING FROM LOODGINGG aWHERE MMANAGEER = BILL GATESS; ORACLE hintss 還包括AALL_ROOWS, FFIRST_ROWS, RULEE,USE_NL, UUSE_MEERGE, USE_HHASH 等等等??梢愿鶕?jù)具具體情況具體體使用。第三章oraccle和syybase的的SQL區(qū)別別一、大小寫(xiě)SYBASE的的SQL中數(shù)數(shù)據(jù)庫(kù)名、表表名和列名分分大小寫(xiě),應(yīng)應(yīng)遵循定義時(shí)時(shí)的寫(xiě)法;OORACLEE 并不區(qū)分分。二、限制記錄數(shù)數(shù)量在SYBASEE SQL中中限制紀(jì)錄的的數(shù)量,需要要用

溫馨提示

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