用mysql写存储过程中遇到的问题

本文记录了作者使用MySQL创建存储过程的过程及遇到的问题,包括如何更改语句结束符号以避免错误,以及如何正确地进行变量赋值等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用mysql写存储过程中遇到的问题

今天看视频学习jdbc相关的知识,因为视频用的是oracle,而我用的是mysql,一步步跟下来,在存储过程这里费了很多心思,还好刚刚终于成功了

这里把完成的存储过程贴上:
delimiter ;;
CREATE DEFINER = CURRENT_USER PROCEDURE `NewProc`(IN `v_a` int,`v_b` int,OUT `v_ret` int,INOUT `v_temp` int)
BEGIN
    if(v_a > v_b)then
    set v_ret = v_a;
    else
    set v_ret = v_b;
    end if;
    set v_temp = v_temp + 1;

END;;
delimiter ;

这里写一些出现过得问题,数据库学的是真的不好:
1.delimiter是用来更改语句结束符号的,防止过程中有;导致的错误
2.最初用mysql的命令框打代码,更改很不方便,东改西改还是错,我就拿Navicat for MySQL先建一个存储过程,再理解其中的要点

CREATE DEFINER = CURRENT_USER PROCEDURE `NewProc`(IN `v_a` int,`v_b` int,OUT `v_ret` int,INOUT `v_temp` int)

这段就是从上面v来的,意思是创建一个NewProc的存储过程并创建了四个字段。
DEFINER = CURRENT_USER不太理解,百度了,大致使指定用户的意思

3.变量赋值没有拿 set 赋,刚开始百度了一下用的是@,不行,不知道哪里错了,就回来用set过了,@的原因还得以后看。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值