【发布时间】:2018-05-21 00:44:57
【问题描述】:
我试图通过 PHP 调用存储过程从数据库中返回一行。但是,当我这样做时,我通常会收到“一般错误”。
Fatal error: Uncaught PDOException: SQLSTATE[HY000]: General error in C:\xampp\htdocs\Skilaverkefni 4\Courses\read.php:11
Stack trace:
#0 C:\xampp\htdocs\Skilaverkefni 4\Courses\read.php(11): PDOStatement->fetchAll(2)
#1 C:\xampp\htdocs\Skilaverkefni 4\index.php(13): ReadCourse('FOR3L3U')
#2 {main}
thrown in C:\xampp\htdocs\Skilaverkefni 4\Courses\read.php on line 11
代码如下:
<?php
function ReadCourse($courseID)
{
require "dbCon.php";
$SQL = "SET @p0='" . $courseID . "'; CALL ReadCourse(@p0);";
echo "$SQL";
$logon = $pdo->prepare($SQL);
$logon->execute();
$records = $logon->fetchAll(PDO::FETCH_ASSOC);
print_r($records);
}
?>
经过长时间的 Google 会话后,我发现问题主要是由我处理从存储过程返回的数据的读取方式引起的,我该如何正确执行此操作?
【问题讨论】:
标签: php mysql stored-procedures pdo