php调用mysql存储过程时不能返回参数
发布网友
发布时间:2022-05-07 13:57
我来回答
共2个回答
懂视网
时间:2022-05-07 18:18
bitsCN.com
大家都知道,mysql 的存储过程是不能使用 return 语句的,只有存储函数才有此功能。那么,有没有替代 return 的关键字呢? 没有! 像 exit, quit 之类的关键字全没有! 怎么办? 使用功能稍次一些的 leave 关键字吧,此关键字可以模仿 return 的行为。 举一个例子吧: SET FOREIGN_KEY_CHECKS=0;-- ------------------------------ Procedure structure for sp_test_return-- ----------------------------DROP PROCEDURE IF EXISTS `sp_test_return`;DELIMITER ;;CREATE PROCEDURE `sp_test_return`(In num integer)label_pro:begin if num > 3 then leave label_pro;else select num as exeuted;end if;end;;DELIMITER ; 本例中,给整个存储过程的入口打了一个标记,当在遇到需要退出存储过程时,只要 leave + 此标记即可。
作者 crocodile bitsCN.com
热心网友
时间:2022-05-07 15:26
要适用mysql_fetch_row来获得数据,例如:
$sql='CALL sp(param)';
$res=mysql_query($sql);
$row=mysql_fetch_row($res);
数组$row里面就有返回的结果。