婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > MySQL與Oracle差異比較之五存儲過程&Function

MySQL與Oracle差異比較之五存儲過程&Function

熱門標簽:湖南保險智能外呼系統產品介紹 河北便宜電銷機器人軟件 南昌呼叫中心外呼系統哪家好 怎么申請400熱線電話 泗洪正規電話機器人找哪家 小程序智能電話機器人 怎么去開發一個電銷機器人 ai電話電話機器人 簡單的智能語音電銷機器人

存儲過程Function

編號 類別 ORACLE MYSQL 注釋
1 創建存儲過程語句不同 create or replace procedure P_ADD_FAC(
   id_fac_cd  IN ES_FAC_UNIT.FAC_CD%TYPE) is
DROP PROCEDURE IF EXISTS `SD_USER_P_ADD_USR`;
create procedure P_ADD_FAC(
       id_fac_cd  varchar(100))

1.在創建存儲過程時如果存在同名的存儲過程,會刪除老的存儲過程.  
  oracle使用create or replace.
  mysql使用先刪除老的存儲過程,然后再創建新的存儲過程.
2. oracle 存儲過程可以定義在package中,也可以定義在Procedures中. 如果定義在包中,一個包中可以包含多個存儲過程和方法.如果定義在Procedures中,存儲過程中不可以定義多個存儲過程. 
   Mysql  存儲過程中不可以定義多個存儲過程. 
3. oracle中字符串類型可以使用varchar2.  
   Mysql 需要使用varchar
4. Oracle中參數varchar長度不是必須的,
   Mysql中參數varchar長度是必須的, 比如varchar(100) 
2 創建函數語句不同 CREATE OR REPLACE FUNCTION F_ROLE_FACS_GRP(
     ii_role_int_key IN SD_ROLE.ROLE_INT_KEY%TYPE
    ) RETURN VARCHAR2
DROP FUNCTION IF EXISTS `SD_ROLE_F_ROLE_FACS_GRP`;
CREATE  FUNCTION `SD_ROLE_F_ROLE_FACS_GRP`(
 ii_role_int_key INTEGER(10)
) RETURNSvarchar(1000) 
1.在創建函數時如果存在同名的函數,會刪除老的函數.  
  oracle使用create or replace.
  mysql使用先刪除老的函數,然后再創建新的函數.
2. oracle 函數可以定義在package中,也可以定義在Functions中. 如果定義在包中,一個包中可以包含多個存儲過程和函數.如果定義在Functions中,每個函數只能定義一個函數.
   Mysql  Functions不可以定義多個函數. 
3.  oracle返回值用return. 
    Mysql返回值用returns. 
3 傳入參數寫法不同 procedure P_ADD_FAC(
   id_fac_cd  IN ES_FAC_UNIT.FAC_CD%TYPE)
create procedure P_ADD_FAC(
     (in) id_fac_cd  varchar(100))

1. oracle存儲過程參數可以定義為表的字段類型.
   Mysql存儲過程不支持這種定義方法.需要定義變量的實際類型和長度.
2. oracle 參數類型in/out/inout寫在參數名后面. 
   Mysql  參數類型in/out/inout寫在參數名前面.
3. oracle 參數類型in/out/inout 都必須寫.
   Mysql  參數類型如果是in,則可以省略. 如果是out或inout則不能省略.
注意: mysql中指定參數為IN, OUT, 或INOUT 只對PROCEDURE是合法的。(FUNCTION參數總是被認為是IN參數) RETURNS字句只能對FUNCTION做指定,對函數而言這是強制的。它用來指定函數的返回類型,而且函數體必須包含一個RETURN value語句。  

function func_name(
           gw_id  in(out)  varchar2 )
create function func_name(
       gw_id varchar(100))
4 包的聲明方式 create or replace package/package body package name 拆分成多個存儲過程或函數 oracle可以創建包,包中可以包含多個存儲過程和方法. 
mysql沒有沒有包這個概念,可以分別創建存儲過程和方法. 每個存儲過程或方法都需要放在一個文件中. 
例1: 方法命名 
oracle 中SD_FACILITY_PKG.F_SEARCH_FAC 
to mysql SD_FACILITY_F_SEARCH_FAC 
例2: 過程命名
oracle 中SD_FACILITY_PKG.P_ADD_FAC
to mysql SD_FACILITY_P_ADD_FAC 
5 存儲過程返回語句不一樣 return; LEAVE proc; (proc 代表最外層的begin end) oracle存儲過程和方法都可以使用return退出當前過程和方法. 
Mysql存儲過程中只能使用leave退出當前存儲過程.不可以使用return. 
Mysql方法可以使用return退出當前方法. 
6 存儲過程異常處理不一樣 EXCEPTION
    WHEN OTHERS THEN
    ROLLBACK ;
    ov_rtn_msg := c_sp_name||'('|| li_debug_pos ||'):'||
        TO_CHAR(SQLCODE)||': '||SUBSTR(SQLERRM,1,100);
DECLARE EXIT HANDLER FOR  SQLEXCEPTION 
 BEGIN
    ROLLBACK ;
    set ov_rtn_msg = concat(c_sp_name,'(', li_debug_pos ,'):',
        TO_CHAR(SQLCODE),': ',SUBSTR(SQLERRM,1,100));
 END;
oracle : 內部異常不需要定義,在存儲過程或函數末尾寫上EXCEPTION后,后面的部分即為異常處理的部分.  oracle可以定義自定義異常,自定義異常需要使用raise關鍵字拋出異常后,才可以在EXCEPTION中捕獲.

mysql: mysql內部異常也需要先定義,在定義的同時也需要實現異常的功能. 
          目前mysql不支持自定義異常. 
7 過程和函數的聲明變量的位置不同 聲明變量在begin…end體之前 聲明變量在begin...end體內,begin之后其他任何內容之前  
8 NO_DATA_FOUND異常處理  EXCEPTION
        WHEN NO_DATA_FOUND THEN
            oi_rtn_cd := 1;
            ov_rtn_msg := SD_COMMON.P_GET_MSG('DP-CBM-01100a-016',
                                                 li_sub_rtn_cd,
                                                 lv_sub_rtn_msg
                                                 );
使用FOUND_ROWS()代替NO_DATA_FOUND. 詳見注釋. oracle中: 
NO_DATA_FOUND是游標的一個屬性. 
當select沒有查到數據就會出現 no data found 的異常,程序不會向下執行.

Mysql: 
沒有NO_DATA_FOUND這個屬性.但可是使用FOUND_ROWS()方法得到select語句查詢出來的數據.如果FOUND_ROWS()得到的值為0,就進入異常處理邏輯. 
9 在存儲過程中調用存儲過程方式的不同 Procedure_Name(參數); Call Procedure_Name(參數); MYSQL存儲過程調用存儲過程,需要使用Call pro_name(參數).  
Oracle調用存儲過程直接寫存儲過程名就可以了. 
10 拋異常的方式不同 RAISE Exception_Name; 見備注 詳見2009002-OTMPPS-Difficult Questions-0001.doc>>中2.5 Mysql異常處理部分

您可能感興趣的文章:
  • 詳解MySQL實時同步到Oracle解決方案
  • Mysql、Oracle中常用的多表修改語句總結
  • mysql和oracle的區別小結(功能性能、選擇、使用它們時的sql等對比)
  • mysql數據庫和oracle數據庫之間互相導入備份
  • MySQL實現類似Oracle序列的方案
  • 抽取oracle數據到mysql數據庫的實現過程
  • Oracle和MySQL的高可用方案對比分析
  • MySQL與Oracle 差異比較之六觸發器
  • MySQL與Oracle差異比較之三 函數
  • 詳解Mysql和Oracle之間的誤區

標簽:柳州 淮安 威海 那曲 江蘇 荊門 瀘州 景德鎮

巨人網絡通訊聲明:本文標題《MySQL與Oracle差異比較之五存儲過程&Function》,本文關鍵詞  MySQL,與,Oracle,差異,比較,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MySQL與Oracle差異比較之五存儲過程&Function》相關的同類信息!
  • 本頁收集關于MySQL與Oracle差異比較之五存儲過程&Function的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    91精品国产aⅴ一区二区| 日韩欧美一区二区免费| 亚洲欧洲精品天堂一级 | 国产一区二区三区av电影| 一区二区三国产精华液| 欧美一级日韩不卡播放免费| 日韩精品一区二区三区四区| 日日夜夜免费精品| 成人免费视频caoporn| 日韩一区二区在线看| 欧美日韩国产大片| 欧美一区二区三区性视频| 欧美一区二区三区在线观看| 欧美日本国产一区| 亚洲一区二区三区四区五区中文| 成人国产电影网| 日韩成人一级片| 久色婷婷小香蕉久久| 国产乱码一区二区三区| 在线电影欧美成精品| 精品裸体舞一区二区三区| 91福利视频久久久久| 精品一区二区三区在线观看| 国产精品久久久久久福利一牛影视| 青青草精品视频| 69堂成人精品免费视频| 亚洲妇熟xx妇色黄| 日本韩国欧美一区二区三区| 中文字幕av一区 二区| 久久国产精品一区二区| 丰满亚洲少妇av| 91.xcao| 丁香婷婷深情五月亚洲| 中文字幕中文乱码欧美一区二区| 一区二区三区四区在线播放| 91在线精品一区二区| 综合av第一页| 精品入口麻豆88视频| 国产精品影视天天线| 夜夜精品视频一区二区| 日韩三级视频在线观看| 久久国产精品第一页| 欧美国产在线观看| 538在线一区二区精品国产| 午夜精品影院在线观看| 26uuu成人网一区二区三区| 色女孩综合影院| 成人美女在线观看| 毛片av一区二区三区| 久久国产欧美日韩精品| 免费看欧美女人艹b| 亚洲综合视频网| 爽好多水快深点欧美视频| 国产一区在线观看视频| 欧美日韩国产中文| 久久综合五月天婷婷伊人| 久久精品久久精品| 国产亚洲精品精华液| 欧美日本在线一区| 色8久久人人97超碰香蕉987| 国产一区二区久久| 综合激情成人伊人| 国产精品国产三级国产aⅴ中文| 国产99久久久精品| 成人免费视频网站在线观看| 波多野结衣一区二区三区| 欧美一区二区视频在线观看| 亚洲一二三区不卡| 麻豆国产精品一区二区三区 | 国产精品一区二区视频| 国产精品日韩精品欧美在线 | 亚洲国产一区二区在线播放| 亚洲人成在线播放网站岛国| 亚洲综合av网| 久久99国内精品| 97久久精品人人做人人爽| 欧美日韩一区不卡| 日韩免费观看2025年上映的电影| 欧美sm极限捆绑bd| 岛国av在线一区| caoporm超碰国产精品| 亚洲国产一二三| 欧美久久久久久蜜桃| 日本免费新一区视频| 欧美色涩在线第一页| 亚洲免费三区一区二区| 天天av天天翘天天综合网 | 色婷婷精品久久二区二区蜜臀av| 日本不卡一二三| 亚洲一区二区高清| 亚洲综合视频在线| 亚洲成国产人片在线观看| 欧美一级高清片| 欧美精选午夜久久久乱码6080| 成人av网站在线观看| av在线综合网| 日韩免费电影一区| 中文字幕一区二区不卡| 精品一区二区三区免费播放| 亚洲免费av在线| 国产自产v一区二区三区c| 91成人免费电影| 久久蜜臀精品av| 久久久不卡影院| 日本视频一区二区| 老司机精品视频一区二区三区| 久久99精品久久久久久久久久久久 | www.日韩av| 国产mv日韩mv欧美| 91色在线porny| 成人欧美一区二区三区| 国产美女久久久久| 精品福利视频一区二区三区| 午夜不卡av免费| 欧美精品九九99久久| 亚洲图片有声小说| 欧美日韩和欧美的一区二区| 亚洲一区av在线| 欧美精品 日韩| 精品一二三四区| 久久你懂得1024| 97久久精品人人澡人人爽| 国产精品无码永久免费888| 国产成人精品亚洲777人妖| 中文字幕av免费专区久久| 日韩极品在线观看| 日韩精品一区二区三区视频在线观看 | 2020日本不卡一区二区视频| 国产高清在线观看免费不卡| 中文字幕亚洲区| 色综合久久天天综合网| 亚洲电影在线播放| 日韩免费性生活视频播放| 视频一区欧美精品| www国产成人免费观看视频 深夜成人网| 肉肉av福利一精品导航| 久久精品欧美一区二区三区麻豆| 国产.精品.日韩.另类.中文.在线.播放| 亚洲国产成人一区二区三区| 欧美午夜精品久久久久久超碰| 日一区二区三区| 亚洲综合免费观看高清完整版| 欧美在线你懂得| 午夜欧美视频在线观看| 日韩精品自拍偷拍| 色88888久久久久久影院野外| 免费视频最近日韩| 国产成人综合亚洲91猫咪| 欧美日韩大陆一区二区| 成人免费高清在线| 国产成人在线影院| 国产精品久久久久久久久图文区| 日韩一级大片在线| 日韩精品一区二区三区swag| 欧美日韩精品一区二区在线播放 | 日韩一区二区在线看| 欧美性欧美巨大黑白大战| 成人免费毛片aaaaa**| 床上的激情91.| 日韩国产欧美在线视频| 麻豆高清免费国产一区| 亚洲色图欧洲色图| 午夜视频在线观看一区| 天天色 色综合| 精品中文av资源站在线观看| 亚洲精品中文在线观看| 亚洲一区日韩精品中文字幕| 一区av在线播放| 亚洲成av人在线观看| 亚洲成人在线网站| 九九视频精品免费| 国产乱码精品一品二品| 99视频精品在线| 欧美亚州韩日在线看免费版国语版| 豆国产96在线|亚洲| 91视频国产资源| 欧美另类一区二区三区| 亚洲精品在线网站| 亚洲一卡二卡三卡四卡五卡| 亚洲麻豆国产自偷在线| 亚洲福中文字幕伊人影院| 激情六月婷婷综合| 久久91精品久久久久久秒播| 成人精品免费看| 91精品国产色综合久久不卡电影| 日韩欧美一区二区三区在线| 中文字幕av资源一区| 国产精品乱码一区二三区小蝌蚪| 亚洲成人在线观看视频| 亚洲精品国产a| 国产久卡久卡久卡久卡视频精品| 国产精品18久久久久久久久 | 欧美男人的天堂一二区| 97成人超碰视| 国产精品乱码妇女bbbb| 免费精品视频在线| 欧美成人一区二区三区在线观看| 日韩激情视频网站| 国产农村妇女精品| 欧美日韩亚洲综合在线|