freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

java編程規(guī)范[整理]-資料下載頁

2025-04-12 00:23本頁面
  

【正文】 連接多個表時,請使用表的別名并把別名前綴用于每個Column上,這樣可以減少解析的時間并減少那些由Column歧義引起的語法錯誤。別名使用字母必須為A、B、C、D…,必須順序使用。規(guī)則8 用EXISTS替代IN在許多基于基礎表的查詢中,為了滿足一個條件,往往需要對另一個表進行聯(lián)接,在這種情況下,使用EXISTS(或NOT EXISTS)通常將提高查詢的效率。216。 示例:低效SELECT *    FROM EMP(基礎表)    WHERE EMPNO 0 AND DEPTNO IN (SELECT DEPTNO    FROM DEPT    WHERE LOC = 39。MELB39。)。高效SELECT *    FROM EMP(基礎表)    WHERE EMPNO 0    AND EXISTS (SELECT 39。X39。    FROM DEPT    WHERE =    AND LOC = 39。MELB39。)。規(guī)則9 用NOT EXISTS替代NOT IN在子查詢中,NOT IN子句將執(zhí)行一個內(nèi)部的排序和合并,無論在哪種情況下,NOT IN都是最低效的,因為它對子查詢中的表執(zhí)行了一個全表遍歷,為了避免使用NOT IN,我們可以把它改寫成外連接(Outer Joins)或NOT EXISTS。216。 示例: SELECT …    FROM EMP    WHERE DEPT_NO NOT IN (SELECT DEPT_NO    FROM DEPT    WHERE DEPT_CAT = 39。A39。)。為了提高效率改寫為高效SELECT …    FROM EMP A, DEPT B    WHERE = (+)    AND IS NULL    AND (+) = 39。A39。最高效 SELECT …    FROM EMP E    WHERE NOT EXISTS (SELECT 39。X39。    FROM DEPT D    WHERE =    AND DEPT_CAT = 39。A39。)。規(guī)則10 用表連接替換EXISTS通常來說,采用表連接的方式比EXISTS更有效率。216。 示例:SELECT ENAME    FROM EMP E    WHERE EXISTS (SELECT 39。X39。    FROM DEPT    WHERE DEPT_NO =    AND DEPT_CAT = 39。A39。)。更高效SELECT ENAME    FROM DEPT D, EMP E    WHERE =    AND DEPT_CAT = 39。A39。規(guī)則11 用EXISTS替換DISTINCT當提交一個包含多表信息(比如部門表和雇員表)的查詢時,避免在SELECT子句中使用DISTINCT,一般可以考慮用EXIST替換。216。 示例:低效SELECT DISTINCT DEPT_NO, DEPT_NAME    FROM DEPT D, EMP E    WHERE = 高效SELECT DEPT_NO, DEPT_NAME    FROM DEPT D    WHERE EXISTS (SELECT 39。X39。    FROM EMP E    WHERE = )。EXISTS使查詢更為迅速,因為RDBMS核心模塊將在子查詢的條件一旦滿足后,立刻返回結(jié)果。規(guī)則12 用索引提高效率索引是表的一個概念部分,用來提高檢索數(shù)據(jù)的效率。實際上,Oracle使用了一個復雜的自平衡Btree結(jié)構(gòu)。通常,通過索引查詢數(shù)據(jù)比全表掃描要快。當Oracle找出執(zhí)行查詢和Update語句的最佳路徑時,Oracle優(yōu)化器將使用索引同樣,在聯(lián)結(jié)多個表時使用索引也可以提高效率。另一個使用索引的好處是,它提供了主鍵(primary key)的唯一性驗證除了那些LONG或LONG RAW數(shù)據(jù)類型,你可以索引幾乎所有的列通常在大型表中使用索引特別有效,當然,在掃描小表時,使用索引同樣能提高效率,雖然使用索引能得到查詢效率的提高,但是我們也必須注意到它的代價,索引需要空間來存儲,也需要定期維護,每當有記錄在表中增減或索引列被修改時,索引本身也會被修改。這意味著每條記錄的INSERT、DELETE、UPDATE將為此多付出5次的磁盤I/O,因為索引需要額外的存儲空間和處理,那些不必要的索引反而會使查詢反應時間變慢。Oracle對索引有兩種訪問模式:1).索引唯一掃描(INDEX UNIQUE SCAN)大多數(shù)情況下, 優(yōu)化器通過WHERE子句訪問INDEX例如:表LODGING有兩個索引:建立在LODGING列上的唯一性索引LODGING_PK和建立在MANAGER列上的非唯一性索引LODGING$MANAGERSELECT *    FROM LODGING    WHERE LODGING = 39。ROSE HILL39。在內(nèi)部,上述SQL將被分成兩步執(zhí)行:首先,LODGING_PK索引將通過索引唯一掃描的方式被訪問,獲得相對應的ROWID;然后通過ROWID訪問表的方式執(zhí)行下一步檢索如果被檢索返回的列包括在INDEX列中,Oracle將不執(zhí)行第二步的處理(通過ROWID訪問表)因為檢索數(shù)據(jù)保存在索引中,單單訪問索引就可以完全滿足查詢結(jié)果   2).索引范圍查詢(INDEX RANGE SCAN)   適用于兩種情況:   1.基于唯一性索引的一個范圍的檢索   2.基于非唯一性索引的檢索216。 示例:SELECT LODGING    FROM LODGING    WHERE LODGING LIKE 39。M%39。WHERE子句條件包括一系列值,Oracle將通過索引范圍查詢的方式查詢LODGING_PK由于索引范圍查詢將返回一組值,它的效率就要比索引唯一掃描低一些216。 示例:SELECT LODGING    FROM LODGING    WHERE MANAGER = 39。BILL GATES39。這個SQL的執(zhí)行分兩步,LODGING$MANAGER的索引范圍查詢(得到所有符合條件記錄的ROWID),通過ROWID訪問表得到LODGING列的值由于LODGING$MANAGER是一個非唯一性的索引,數(shù)據(jù)庫不能對它執(zhí)行索引唯一掃描WHERE子句中,如果索引列所對應的值的第一個字符由通配符(WILDCARD)開始,索引將不被采用SELECT LODGING    FROM LODGING    WHERE MANAGER LIKE 39。%HANMAN39。在這種情況下,Oracle將使用全表掃描規(guī)則13 避免在索引列上使用計算WHERE子句中,如果索引列是函數(shù)的一部分,優(yōu)化器將不使用索引而使用全表掃描。216。 示例:低效SELECT …    FROM DEPT    WHERE SAL * 12 25000。高效SELECT …    FROM DEPT    WHERE SAL 25000 / 12。請務必注意,檢索中不要對索引列進行處理,如:TRIM,TO_DATE,類型轉(zhuǎn)換等操作,破壞索引,使用全表掃描,影響SQL執(zhí)行效率。規(guī)則14 避免在索引列上使用IS NULL和IS NOT NULL避免在索引中使用任何可以為空的列,Oracle將無法使用該索引對于單列索引,如果列包含空值,索引中將不存在此記錄;對于復合索引,如果每個列都為空,索引中同樣不存在此記錄。如果至少有一個列不為空,則記錄存在于索引中如果唯一性索引建立在表的A列和B列上,并且表中存在一條記錄的A,B值為(123,null),Oracle將不接受下一條具有相同A,B值(123,null)的記錄插入如果所有的索引列都為空,Oracle將認為整個鍵值為空,而空不可能等于空,因此你可以插入1000條具有相同鍵值的記錄,當然它們都是空!因為空值不存在于索引列中,所以WHERE子句中對索引列進行空值比較將使Oracle停用該索引低效(索引失效)SELECT …    FROM DEPARTMENT    WHERE DEPT_CODE IS NOT NULL規(guī)則15 使用UNIONALL和UNION當SQL語句需要UNION兩個查詢結(jié)果集合時,這兩個結(jié)果集合會以UNIONALL的方式被合并,然后在輸出最終結(jié)果前進行排序如果用UNION ALL替代UNION,這樣排序就不是必要了,效率就會因此得到提高需要注意的是,UNION ALL將重復輸出兩個結(jié)果集合中相同記錄,因此還是要從業(yè)務需求分析使用UNION ALL的可行性關(guān)于索引下列經(jīng)驗請參考:1).如果檢索數(shù)據(jù)量超過30%的表中記錄數(shù),使用索引將沒有顯著的效率提高2).在特定情況下,使用索引也許會比全表掃描慢,但這是同一個數(shù)量級上的差距;而通常情況下,使用索引比全表掃描要快幾倍乃至幾千倍!規(guī)則16 嵌套查詢SELECT ORG_NO FROM OCONNECT BY PRIOR ORG_NO = P_ORG_NO START WITH P_ORG_NO = 39。11000012539。UNION ALLSELECT ORG_NO FROM O WHERE ORG_NO = 39。11000012539。使用嵌套查詢時,不必使用UNION ALL,改寫START WITH 即可,示例:SELECT ORG_NO FROM O START WITH ORG_NO = 39。11000012539。CONNECT BY PRIOR ORG_NO = P_ORG_NO。 其他常見問題 條件回顯選擇單位、線路等條件后,可正常查詢數(shù)據(jù),但數(shù)據(jù)加載后,相應條件無法顯示;這樣也會給后續(xù)查詢造成隱含條件的影響;與上面問題關(guān)聯(lián),第一次查詢成功后,條件無法回顯,隱藏條件導到不能查詢正常結(jié)果; 父頁面刷新點擊關(guān)閉,目前中強制主頁面刷新,建議彈出窗口使用修改標志,只有修改,才進行父頁面刷新;否則從效率和體驗都不好; 用戶狀態(tài)USER_STATE代碼如下:以后人員狀態(tài)正常包含004;3 附錄建議在開發(fā)工具中使用以下模板: Eclipse 風格 Eclipse 注釋模板寧可累死在路上,也不能閑死在家里!寧可去碰壁,也不能面壁。是狼就要練好牙,是羊就要練好腿。什么是奮斗?奮斗就是每天很難,可一年一年卻越來越容易。不奮斗就是每天都很容易,可一年一年越來越難。能干的人,不在情緒上計較,只在做事上認真;無能的人!不在做事上認真,只在情緒上計較。拼一個春夏秋冬!贏一個無悔人生!早安!—————獻給所有努力的人.學習參考
點擊復制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1