這裏是我的存儲過程:INOUT參數故障存儲過程從準備好的聲明中呼籲
DELIMITER $$
CREATE DEFINER=`root`@`localhost` PROCEDURE `testProc`(INOUT num INT(11), INOUT num2 INT(11))
BEGIN
set num2 = num+7;
END
下面是調用它的代碼:
$newId = 1;
$type - 2;
if ($stmt = mysqli_prepare($con, 'call testProc(?,?)')) {
mysqli_stmt_bind_param($stmt, 'ii', $type,$newId);
mysqli_stmt_execute($stmt);
mysqli_stmt_bind_result($stmt, $type,$newId);
echo $newId;
exit;
}
我預計$ NEWID持有9.仍持有1.
mysqli_stmt_bind_result()
似乎是多餘的,因爲我實際上沒有一個結果集(我認爲它的存在會導致錯誤,因爲我沒有結果集),但是這個代碼fal ls沒有它(我的實際代碼不,但我不知道爲什麼)。這可能是沒有意義的。
請任何人都可以告訴我如何更改此代碼,使其工作?