MySQL:如何仅使用输出参数调用存储过程?
问题描述:
从我的指导书,我创建了下面的过程中,INSERT语句将产生一个错误:MySQL:如何仅使用输出参数调用存储过程?
create procedure f1
(out error char(5))
begin
declare continue handler for SQLSTATE '23000'
set error='23000';
set error ='00000';
insert into teams values(2,27,'derde');
end;
但是,它并没有说如何调用该程序。我试过
call f1;
call f1();
call f1(error);
但是这些都不起作用。
谢谢!
答
some_variable = call f1(); 它会工作
答
请尝试以下操作:CALL f1();
。
答
如果您想查看错误值作为结果,则必须更改存储过程。像
**SELECT error**
,并请尝试调用程序像
**CALL f1(@error)
SELECT @error**
感谢球员,但是这两种解决方案产生:-(但是错误的SP,我发现了一个方法,做的工作:调用F1(@ 1 ); – Alexander 2011-03-02 09:47:21