存储过程不返回带有PDO语句的记录

时间:2014-04-09 17:44:15

标签: php mysql stored-procedures pdo

刚刚开始处理存储过程,但不确定我是否完全错过理解它们......这是一个简单的我正在努力工作,但它没有输出任何东西:

CREATE procedure testprocedure (userID INT)
DETERMINISTIC
COMMENT "Test procedure"
BEGIN
    SELECT * FROM user WHERE ID=userID;
END

腓:

<?php
    include 'dbconnect.php';
    $stmt = $db->prepare("CALL testprocedure(:userid)");
    $stmt->bindValue(':userid',1,PDO::PARAM_INT);
    $stmt->execute();
    $row=$stmt->fetchAll(PDO::FETCH_ASSOC);
    print_r($row);
?>

只输出array()

但是,如果我在Workbench中使用testprocedure(1),它会返回一行

任何帮助表示赞赏:D

1 个答案:

答案 0 :(得分:0)

这是我愚蠢......

我用来调用存储过程的用户没有'执行'权限......

简单就像那个哈哈......

从好的方面来说,我仍有三分之一的头发留下

相关问题