Mysql2 ::错误:例程database_name.proc_name的OUT或INOUT参数3不是BEFORE触发器中的变量或NEW伪变量
所以,我只是通过做
来调用procconnection = Mysql2::Client.new(config)
result = connection.query('call proc_name(1, 2, 3, 4, 5)')
proc有5个参数,前2个是IN,后3个是INOUT。现在,我认为它是抱怨的,因为它希望INOUT是它可以分配给/改变值的变量。
所以,既然我的connection.query正在调用一个字符串(事先得到了清理),那么有没有一种不同的方法来调用proc,这样INOUT会起作用?
答案 0 :(得分:0)
所以,mysql应该是这样的:
@variable1=1;
call proc_name( @variable1, 2, 3, 4, 5 );
select @variable1;
(假设第一个变量是唯一的INOUT)
基本上每个INOUT变量都需要定义,然后用作arg,并选择,对吗?