mysql与oracle存储过程_mysql与oracle存储过程对比

本文对比了MySQL和Oracle在创建存储过程、函数、参数、包、返回语句、异常处理、变量声明、NO_DATA_FOUND异常及调用存储过程等方面的不同,详细阐述了两者在语法和使用上的差异。
摘要由CSDN通过智能技术生成

一、创建存储过程语句不同

mysql

DROP PROCEDURE IF EXISTS `SD_USER_P_ADD_USR`;

create procedure P_ADD_FAC(id_fac_cd  varchar(100))

oracle

create or replace procedure P_ADD_FAC(id_fac_cd  IN ES_FAC_UNIT.FAC_CD%TYPE) is

注意:

1.在创建存储过程时如果存在同名的存储过程,会删除老的存储过程.

oracle使用create or replace.

mysql使用先删除老的存储过程,然后再创建新的存储过程.

2. oracle 存储过程可以定义在package中,也可以定义在Procedures中.

如果定义在包中,一个包中可以包含多个存储过程和方法.

如果定义在Procedures中,存储过程中不可以定义多个存储过程.

mysql  存储过程中不可以定义多个存储过程.

3. oracle中字符串类型可以使用varchar2.

mysql 需要使用varchar

4. oracle中参数varchar长度不是必须的,

mysql中参数varchar长度是必须的, 比如varchar(100)

二、创建函数语句不同

mysql

DROP FUNCTION IF EXISTS `SD_ROLE_F_ROLE_FACS_GRP`;CREATEFUNCTION `SD_ROLE_F_ROLE_FACS_GRP`(ii_role_int_key INTEGER(10)) RETURNSvarchar(1000)oracle

CREATE OR REPLACEFUNCTION F_ROLE_FAC

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值