PHP PDO语句:PROCEDURE的参数数量不正确

时间:2017-09-23 16:59:16

标签: php mysql stored-procedures

此代码有什么问题?

$statement = $dbConn->prepare("CALL SearchUser(?)");
$statement->bindParam(1, $username, PDO::PARAM_STR|PDO::PARAM_INPUT_OUTPUT, 4000);

这是程序:

CREATE PROCEDURE SearchUser(IN Username VARCHAR(10), OUT numRows INT) 
BEGIN SELECT COUNT(*) INTO numRows 
FROM USER
WHERE Username='IN'; 
END//

错误是:PROCEDURE的参数数量不正确,预期2得1。 为什么?谢谢。

1 个答案:

答案 0 :(得分:1)

您需要传递两个参数

$statement = $dbConn->prepare("CALL SearchUser(?,?)");
$statement->bindParam(1, $username, PDO::PARAM_STR|PDO::PARAM_INPUT_OUTPUT, 4000);
$statement->bindParam(2, $rowcount, PDO::PARAM_INT|PDO::PARAM_INPUT_OUTPUT);

您可以参考此article

相关问题