如何解決 Laravel PDO 資料庫更新中的「SQLSTATE[HY000]:一般錯誤」?

Linda Hamilton
發布: 2024-10-23 00:41:31
原創
922 人瀏覽過

How to Troubleshoot

更新資料庫時解決PDO 錯誤:「SQLSTATE[HY000]:一般錯誤」

在這篇文章中,我們將深入研究使用PHP 資料物件(PDO) 更新資料庫時遇到的問題並解決令人困惑的「SQLSTATE[HY000]:一般錯誤」訊息。

問題陳述

提供的程式碼嘗試使用準備好的語句更新資料庫。然而,儘管更新成功,卻傳回錯誤訊息。

$page = 'my_page';
$section = 'content';
$new_content = 'new_content';
$old_content = 'old_content';

try {
    $stmt = $pdo->prepare("UPDATE $page SET $section = :new_content WHERE $section = '$old_content'");
    $stmt->execute(array(
        'new_content' => $new_content
    ));
    $result = $stmt->fetchAll(); // <-- This line may cause the issue
    echo "Database updated!";
}
catch(PDOException $e) {
    echo 'ERROR UPDATING CONTENT: ' . $e->getMessage();
}
登入後複製

錯誤訊息

ERROR UPDATING CONTENT: SQLSTATE[HY000]: General error
登入後複製

解決方法

問題出在程式碼中對fetchAll() 的調用。 fetchAll() 通常用於從成功的查詢中檢索資料。但是,對於更新或插入查詢,此語句是不必要的。刪除它應該可以解決問題。

$result = $stmt->fetchAll(); // <-- Remove this line
登入後複製

刪除 fetchAll() 語句後,程式碼應該會成功更新資料庫,而不會產生錯誤訊息。

以上是如何解決 Laravel PDO 資料庫更新中的「SQLSTATE[HY000]:一般錯誤」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!