指示有效的过程调用

Indicate a valid procedure call

我带着问题而来,希望得到答案 那么,我的问题是:指出正确的过程调用 我想知道答案:b 或 d 但我不知道这是否是一种好的“思维方式”

create procedure car2(out average float)
begin
select avg(cena) into average from car;
end //

a) 调用 car2(平均);

b) 调用 car2 (@total);

c)调用car2();

d) 两个答案都不正确

预先感谢您的回答,并可能会解释为什么这个答案而不是另一个

正确答案是 (b) 调用 car2 (@total);

选项(a)不使用@符号来标识变量,选项(c)根本不提供变量。

答案a) call car2 (average);可能是正确的也可能是错误的,这取决于这个陈述写在什么地方。例如,如果它是另一个 SP 中的语句,其中变量 average 定义为正确的数据类型,则此语句是正确的。

答案b) call car2 (@total);总是正确的。

答案c) call car2 ();不正确-MySQL不允许跳过参数,会产生参数数量与过程定义不匹配的错误信息。

所以答案d) Neither answer is correct不正确。