PDO error: " SQLSTATE[HY000]: General error " When updating database

PhpPdo

Php Problem Overview


I am getting an error when updating a database using PDO. I am new to PDO so maybe the problem is a small one and I just don't understand. Funny thing about the error, the command works fine and the database does actually get updated. But it still returns an error back at me.

Code:

try {
    $stmt = $pdo->prepare("UPDATE $page SET $section = :new_content WHERE $section = '$old_content'");
    $stmt->execute(array(
        'new_content' => $new_content
    ));
    $result = $stmt->fetchAll();
    echo "Database updated!";
}
catch(PDOException $e) {
    echo 'ERROR UPDATING CONTENT: ' . $e->getMessage();
}

Error: ERROR UPDATING CONTENT: SQLSTATE[HY000]: General error

I literally have no idea where the problem could be because its very vaque and I haven't been able to find anyone with the same problem.

Php Solutions


Solution 1 - Php

You do not use fetchAll(),as in

$result = $stmt->fetchAll();

with update or insert queries. Removing this statement should rectify the problem.

Solution 2 - Php

Just to note, another possible reason for this error is if you make a second database call with the variable $stmt inside of an existing parent $stmt loop.

     $stmt = $conn->query($sql);

    while ($row = $stmt->fetch()) {  //second use of $stmt here inside loop

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionloxyboiView Question on Stackoverflow
Solution 1 - PhpTranQView Answer on Stackoverflow
Solution 2 - PhpAcyraView Answer on Stackoverflow