【问题标题】:Stored procedure not returning records with PDO statement存储过程不返回带有 PDO 语句的记录
【发布时间】:2014-05-23 02:26:39
【问题描述】:

刚开始研究存储过程,但不确定我是否完全错过了理解它们......这是一个我正在尝试开始工作的简单过程,但它没有输出任何内容:

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

PHP:

<?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

【问题讨论】:

    标签: php mysql stored-procedures pdo


    【解决方案1】:

    原来是我太笨了……

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

    就这么简单哈哈...

    从好的方面来说,我的头发还剩三分之一

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-08-04
    • 2019-04-20
    • 2017-05-06
    • 2011-08-20
    • 2010-11-02
    • 1970-01-01
    • 2021-10-04
    • 1970-01-01
    相关资源
    最近更新 更多