Php 存储过程不使用PDO语句返回记录
刚开始研究存储过程,但不确定我是否完全没有理解它们。。。这里有一个简单的例子,我正在尝试使用它,但它没有输出任何内容:Php 存储过程不使用PDO语句返回记录,php,mysql,stored-procedures,pdo,Php,Mysql,Stored Procedures,Pdo,刚开始研究存储过程,但不确定我是否完全没有理解它们。。。这里有一个简单的例子,我正在尝试使用它,但它没有输出任何内容: CREATE procedure testprocedure (userID INT) DETERMINISTIC COMMENT "Test procedure" BEGIN SELECT * FROM user WHERE ID=userID; END Php: 只输出array() 但是,如果我在Workbench中使用testprocedure(1),它将
CREATE procedure testprocedure (userID INT)
DETERMINISTIC
COMMENT "Test procedure"
BEGIN
SELECT * FROM user WHERE ID=userID;
END
Php:
只输出array()
但是,如果我在Workbench中使用testprocedure(1),它将返回一行
感谢任何帮助:D是我太愚蠢了 我用来调用存储过程的用户没有“执行”权限 就这么简单,哈哈
好的一面是,我还有三分之一的头发留着以备将来堵塞时用:
<?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);
?>