本文介绍了MySQL的存储过程:输出参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个mysql存储过程( Google图书) ,一个例子是这样:
I have a mysql stored procedure from this (google book), and one example is this:
DELIMITER $$ DROP PROCEDURE IF EXISTS my_sqrt$$ CREATE PROCEDURE my_sqrt(input_number INT, OUT out_number FLOAT) BEGIN SET out_number=SQRT(input_number); END$$ DELIMITER ;该程序编译正常. (我在ubuntu中使用MySQL查询浏览器).
The procedure compiles fine. (I am using MySQL Query Browser in ubuntu).
但是,当我调用该过程时:
However when I call the procedure:
CALL my_sqrt(4,@out_value);(也在查询浏览器中)
它返回一个错误:
(1064) check the manual that correspond to the...为什么这个例子不起作用?
Why isn't this example working?
推荐答案无法复制.对我来说效果很好:
Unable to replicate. It worked fine for me:
mysql> CALL my_sqrt(4, @out_value); Query OK, 0 rows affected (0.00 sec) mysql> SELECT @out_value; +------------+ | @out_value | +------------+ | 2 | +------------+ 1 row in set (0.00 sec)也许您应该粘贴整个错误消息,而不是对其进行总结.
Perhaps you should paste the entire error message instead of summarizing it.
更多推荐
MySQL的存储过程:输出参数
发布评论