最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PL/SQL編程經(jīng)驗小結(jié)開發(fā)者網(wǎng)絡Oracle

 更新時間:2007年03月07日 00:00:00   作者:  
正在看的ORACLE教程是:PL/SQL編程經(jīng)驗小結(jié)開發(fā)者網(wǎng)絡Oracle。平時在PL/SQL中的編程中遇到一些問題,這里以問答的形式來進行把它們總結(jié)下來,以供大家分享。

  1、當需要向表中裝載大量的數(shù)據(jù)流或者需要處理大量的數(shù)據(jù)流的時候,能否使用管道提高處理效率?
管道函數(shù)對于改善并行查詢的性能非常方便,它加快往表中加載數(shù)據(jù)的速度。管道函數(shù)的使用總結(jié)如下兩點:

  每當在查詢里使用PL/SQL函數(shù)時,該查詢將被序列化,即一個處理器只能運行一個查詢實例,那么在這種情況下不可能使用并行查詢(比如在數(shù)據(jù)倉庫中要經(jīng)常使用這項技術(shù))。因此,為了使用并行查詢就必須使用管道函數(shù),這樣也就加快了執(zhí)行的速度。

  管道函數(shù)的輸入?yún)?shù)必須是一個引用記錄集類型(即ref cursor),而返回的是嵌套表類型(其表中每一行對應每一個引用記錄)。在使用管道函數(shù)之前,必須先在程序頭寫上PARALLEL_ENABLE,這樣才能在查詢語句中使用管道函數(shù)來處理了。

  2. 如何使PL/SQL程序等待一段時間執(zhí)行?
 
  方法就是使用DBMS_LOCK包的SLEEP函數(shù),可以進行精確定時,其語法為:

DBMS_LOCK.SLEEP (seconds IN NUMBER);

  3.需要在一張表插入一條記錄之后等若干秒后再執(zhí)行另外一個操作,如何在PL/SQL程序里進行定時操作? 

  一般的做法是用循環(huán)作延遲,利用 DBMS_UTILITY的gettime函數(shù)來檢測當前的時間,程序代碼如下:


   另外如果是不同會話(session)之間的定時,就必須使用DBMS_PIPE包的函數(shù)來實現(xiàn)會話間的消息傳遞。

  4.當PL/SQL返回一個數(shù)據(jù)集的時候,該使用集合還是游標?

  一般情況下,有以下兩點作為依據(jù):

  1) 如果PL/SQL程序返回多多行數(shù)據(jù)給另外一個PL/SQL程序的話,這里就建議使用集合,因為這樣可以利用集合的批收集(bulk collection)來提高從數(shù)據(jù)庫提取數(shù)據(jù)的速度。

  2) 如果需要在PL/SQL程序的環(huán)境中把數(shù)據(jù)返回到宿主語言環(huán)境中(如Sql*plus,c,delphi等),這時應該使用游標變量來返回這些數(shù)據(jù),因為幾乎所有的宿主語言都支持游標變量,但不是所有的宿主語言都支持集合。這樣可以增強程序的可移植性。

  5.如何更有效的在PL/SQL中使用游標?

  游標是PL/SQL中一個非常重要的概念,對數(shù)據(jù)庫的檢索主要依靠游標來操作。在PL/SQL中有兩類游標,一類是隱式游標,如select clno into v_clno from table_detail.另外一類是顯式游標,如cursor v_cur is select clno from table_detail。對于游標的使用這里給出以下幾點建議:

  1) 盡可能的使用bulk collection。它能夠較大的提高運行性能,在Oracl9i的第二版,甚至可以使用bulk collection來直接將數(shù)據(jù)寫入到記錄表

  2) 盡量使用顯式游標來處理,因為相對于隱式游標來說,顯式游標的速度更快一些。

  3) 如果查詢的表很小或者是靜態(tài)的,可以把該表緩存到一個包級的集合里。這樣,你的查詢函數(shù)就直接從集合里(即進程全局區(qū),PGA cache),而不是從系統(tǒng)全局區(qū)(SGA)來取數(shù)據(jù),這樣的處理速度會提升很多。

相關(guān)文章

  • Oracle數(shù)據(jù)加載和卸載的實現(xiàn)方法

    Oracle數(shù)據(jù)加載和卸載的實現(xiàn)方法

    這篇文章主要介紹了Oracle數(shù)據(jù)加載和卸載的實現(xiàn)方法,非常不錯,具有一定的參考借鑒加載,需要的朋友可以參考下
    2018-08-08
  • 解決oracle用戶連接失敗的解決方法

    解決oracle用戶連接失敗的解決方法

    oracle用戶連接失敗的問題著實讓我們頭疼,下面就為您介紹oracle用戶連接失敗的解決方法,希望對您學習oracle用戶連接方面能有所幫助。
    2010-12-12
  • plsql連接oracle數(shù)據(jù)庫報ora 12154錯誤解決方法

    plsql連接oracle數(shù)據(jù)庫報ora 12154錯誤解決方法

    今天遇到一個問題,plsql連接oracle數(shù)據(jù)庫報ora 12154錯誤,本文將為您詳細介紹此等問題的解決方法
    2012-11-11
  • Oracle數(shù)據(jù)回滾的全過程

    Oracle數(shù)據(jù)回滾的全過程

    這篇文章主要給大家介紹了關(guān)于Oracle數(shù)據(jù)回滾的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-12-12
  • Oracle中PL/SQL復合數(shù)據(jù)類型

    Oracle中PL/SQL復合數(shù)據(jù)類型

    這篇文章介紹了Oracle中PL/SQL的復合數(shù)據(jù)類型,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • Oracle創(chuàng)建用戶與表空間的絕對干貨(建議收藏)

    Oracle創(chuàng)建用戶與表空間的絕對干貨(建議收藏)

    在JAVAEE工程當中時常用的Oracle數(shù)據(jù)庫,作為一名后臺程序開發(fā)人員,掌握如何在Oracle創(chuàng)建用戶,表空間是一項必備的技能,下面這篇文章主要給大家介紹了關(guān)于Oracle創(chuàng)建用戶與表空間的相關(guān)資料,需要的朋友可以參考下
    2022-09-09
  • Oracle報錯:ORA-28001:口令已失效解決辦法

    Oracle報錯:ORA-28001:口令已失效解決辦法

    最近在工作中遇到了一個問題,錯誤是Oracle報錯ORA-28001:口令已失效,下面這篇文章主要給大家介紹了關(guān)于Oracle報錯:ORA-28001:口令已失效的解決辦法,需要的朋友可以參考下
    2023-04-04
  • Oracle中的索引講解

    Oracle中的索引講解

    這篇文章介紹了Oracle中的索引,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • Oracle環(huán)境通過SQL*PLUS本地登錄時報錯的解決過程

    Oracle環(huán)境通過SQL*PLUS本地登錄時報錯的解決過程

    這篇文章主要介紹了Oracle環(huán)境通過SQL*PLUS本地登錄時報錯的解決過程,需要的朋友可以參考下
    2017-08-08
  • Oracle中實現(xiàn)一次插入多條數(shù)據(jù)詳細代碼舉例

    Oracle中實現(xiàn)一次插入多條數(shù)據(jù)詳細代碼舉例

    公司的項目,有個功能每次使用需要向數(shù)據(jù)庫插入很多數(shù)據(jù),這里給大家總結(jié)下,這篇文章主要給大家介紹了Oracle中實現(xiàn)一次插入多條數(shù)據(jù)的相關(guān)資料,文中通過圖文及代碼介紹的非常詳細,需要的朋友可以參考下
    2024-06-06

最新評論

蓝山县| 邵东县| 宝坻区| 怀来县| 泰和县| 阿勒泰市| 安乡县| 古浪县| 全南县| 江门市| 深州市| 虞城县| 内乡县| 泰和县| 明光市| 安乡县| 涡阳县| 邵阳市| 凤台县| 保定市| 金山区| 湾仔区| 天门市| 普宁市| 宁波市| 政和县| 南皮县| 达拉特旗| 巴林左旗| 新晃| 静宁县| 南漳县| 吉木乃县| 景泰县| 曲松县| 徐汇区| 酉阳| 马鞍山市| 嘉黎县| 泸溪县| 黑山县|