繁体   English   中英

mysql存储过程执行prepare语句不起作用

[英]mysql stored procedure execute prepare statement not working

我需要在存储过程中使用准备好的语句,但是我不明白为什么它不起作用。 我有mysql5.7.9,我从PHP-> PDO调用它

CREATE PROCEDURE my_sp(
  OUT out_result VARCHAR(32)
)
BEGIN

  /*This work OK*/
  SELECT pow(2,2) INTO out_result;

  /*NOT work Variable prefixed with @   */
  SELECT pow(2,2) INTO @out_result;

  /*NOT work (with or without @ before out_result variable)*/
  PREPARE stmt FROM 'SELECT pow(2,2) INTO out_result';
  EXECUTE stmt;
  DEALLOCATE PREPARE stmt;
END;

您没有将@out_result当作变量

尝试将其添加到BEGIN下方

SET @out_result = out_result;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM