<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Codooba
    JCenter
    posts - 20,comments - 9,trackbacks - 0

    商業規則和業務邏輯可以通過程序存儲在oracle中,這個程序就是存儲過程。

    存儲過程是SQL, PL/SQL, JAVA 語句的組合, 它使你能將執行商業規則的代碼從從你的應用程序中移動到數據庫。這樣的結果就是,代碼存儲一次但是能夠被多個程序使用

    要創建一個 過程對象(procedural object),必須有 CREATE PROCEDURE 系統權限。如果這個過程對象需要被其他的用戶schema 使用,那么你必須有 CREATE ANY PROCEDURE 權限。

    執行 procedure 的時候,可能需要excute權限。或者EXCUTE ANY PROCEDURE 權限。

    如果單獨賦予權限,如下例所示:  grant  execute on MY_PROCEDURE  to Jelly

    調用一個存儲過程的例子: execute MY_PROCEDURE( 'ONE PARAMETER');

    PROCEDURE 和 FUNCTION 的區別。 function有返回值,并且可以直接在Query中引用function和或者使用function的返回值。

     PACKAGE 是function,procedure,variables 和sql 語句的組合。package允許多個procedure使用同一個變量和游標。

    創建 procedure的語法:

    CREATE [ OR REPLACE ] PROCEDURE [ schema.]procedure
      [(argument [IN | OUT | IN OUT ] [NO COPY] datatype
        [, argument [IN | OUT | IN OUT ] [NO COPY] datatype]...
      )]
    [ authid { current_user | definer }]
    { is | as } { pl/sql_subprogram_body |
    language { java name 'String' | c [ name, name] library lib_name
    }]

    sql 代碼
    1. CREATE PROCEDURE sam.credit (acc_no IN NUMBER, amount IN NUMBER) AS    
    2.    BEGIN  
    3.       UPDATE accounts    
    4.       SET balance = balance + amount    
    5.       WHERE account_id = acc_no;    
    6.    END;  

     

    可以使用 create or replace procedure 語句, 這個語句的用處在于,你之前賦予的excute權限都將被保留。

    IN, OUT, IN OUT 用來修飾參數。IN 表示這個變量必須被調用者賦值然后傳入到PROCEDURE進行處理。OUT 表示PRCEDURE 通過這個變量將值傳回給調用者。IN OUT 則是這兩種的組合。

    authid代表兩種權限: 定義者權限(difiner right 默認),執行者權限(invoker right)。定義者權限說明這個procedure中涉及的表,視圖等對象所需要的權限只要定義者擁有權限的話就可以訪問。執行者權限則需要調用這個procedure的用戶擁有相關表和對象的權限。

    posted on 2007-07-02 15:46 Zhangwenlong 閱讀(803) 評論(1)  編輯  收藏

    FeedBack:
    # re: oracle存儲過程基礎知識
    2016-07-01 14:45 | 1`2
    4324324  回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 大地资源在线资源免费观看| 成人特级毛片69免费观看| 亚洲sm另类一区二区三区| 羞羞视频网站免费入口| 久久www免费人成看国产片| 久久久久久影院久久久久免费精品国产小说| 色欲色香天天天综合网站免费 | 一级A毛片免费观看久久精品| 精品多毛少妇人妻AV免费久久| 桃子视频在线观看高清免费视频| 18禁免费无码无遮挡不卡网站| 国产精品国产免费无码专区不卡 | 国产精品视频免费一区二区 | 国产大片91精品免费看3| 在线精品亚洲一区二区小说| 91亚洲va在线天线va天堂va国产| 亚洲免费福利在线视频| fc2免费人成为视频| 麻豆国产精品免费视频| 免费无遮挡无码永久在线观看视频| 亚洲中文久久精品无码| 亚洲av午夜精品无码专区| 一级黄色毛片免费看| 91免费在线播放| 亚洲精品国产V片在线观看 | 国产成人亚洲精品电影| 久久精品电影免费动漫| 尤物永久免费AV无码网站| 亚洲av无码一区二区三区网站| 亚洲色丰满少妇高潮18p| a级毛片在线免费| 超pen个人视频国产免费观看| 亚洲精品国产精品乱码不99| 四虎亚洲精品高清在线观看| 91视频免费观看高清观看完整| 成人爽A毛片免费看| 日韩亚洲人成在线综合日本| 亚洲国产高清国产拍精品| 午夜免费福利小电影| 亚洲国产一成久久精品国产成人综合 | 亚洲AV区无码字幕中文色|