存储过程的输出参数未显示

时间:2018-08-01 00:55:00

标签: mysql sql stored-procedures

我似乎无法让存储过程在调用OUT参数时显示它。它仅显示“ 0行受影响”,不显示OUTPUT变量。 OUTPUT是已声明的变量的值。这是我的程序

CREATE DEFINER=`root`@`%` PROCEDURE `test`(IN `masterId` INT, IN `subId` INT,  OUT current_balance INT)
BEGIN
    declare current_balance INT;
    set current_balance = 2;   
END

这就是我所说的: 调用test('274','399',@res)

1 个答案:

答案 0 :(得分:1)

您已使用局部变量覆盖了该参数。

我更喜欢为参数命名以避免冲突:

CREATE DEFINER=`root`@`%` PROCEDURE `test`(
    IN in_masterId INT,
    IN in_subId INT, 
    OUT out_current_balance INT
)
BEGIN
    set out_current_balance = 2;   
END;