Mysql
 sql >> Datenbank >  >> RDS >> Mysql

SQL-Abfrage, die in PHP falsch zurückgibt

Wenn Sie parametrisierte Abfragen verwenden, müssen Sie den Wert für den Parameter übergeben, wenn Sie die vorbereitete Abfrage ausführen.

Sie müssen auch execute die vorbereitete Abfrage. Die Vorbereitung leitet die Abfrage nur zur Kompilierung und Optimierung an die Datenbank weiter, sie führt die Abfrage nicht wirklich aus.

Auch wenn Sie einen Fehler in dieser Datenbankzugriffsanweisung erhalten, gibt es Funktionen/Methoden, die Sie verwenden sollten, um die eigentliche Fehlermeldung anzuzeigen, die viel nützlicher sind, als etwas auszugeben, das Sie sich selbst ausgedacht haben, wie echo "Error creating SQL statement";

Auch der ; ist nicht erforderlich.

$stmt = $conn->prepare("SELECT * FROM artist WHERE artID != ?");
if ( $stmt === false ){
    echo $conn->error;
    exit;
}


$stmt->bindParam('i', $some_variable)

$result = $stmt->execute();

if ( $result === false ) {
    echo $stmt->error;
    exit;
}