Heim > Datenbank > MySQL-Tutorial > Wie kann ich MySQL-Fehler aus der „prepare()'-Methode von PDO in PHP abrufen?

Wie kann ich MySQL-Fehler aus der „prepare()'-Methode von PDO in PHP abrufen?

Susan Sarandon
Freigeben: 2024-12-21 06:51:09
Original
599 Leute haben es durchsucht

How to Retrieve MySQL Errors from PDO's `prepare()` Method in PHP?

Wie rufe ich Abfragefehler aus PDO Prepare() in PHP ab?

Problem:

Bedenken Sie den folgenden PHP-Code :

$st = $db->prepare("SELECT * FROM c6ode");
Nach dem Login kopieren

Wie können Sie hier den beabsichtigten MySQL-Fehler für die Abfrage erhalten? Beispiel?

Lösung:

Um Fehlerinformationen von Prepare() abzurufen, müssen Sie:

  1. Das Fehlermodus-Attribut-PDO festlegen: :ATTR_ERRMODE zu PDO::ERRMODE_EXCEPTION.
  2. Deaktivieren Sie die PDO::ATTR_EMULATE_PREPARES-Funktion, da sie verhindert, dass der MySQL-Server die Anweisung sofort verarbeitet.

Hier ist ein Beispiel:

<?php
$pdo = new PDO('mysql:host=localhost;dbname=test;charset=utf8', 'localonly', 'localonly');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$pdo->prepare('INSERT INTO DoesNotExist (x) VALUES (?)');
Nach dem Login kopieren

Dieser Code löst eine Ausnahme aus und gibt Folgendes aus Fehlermeldung:

SQLSTATE[42S02]: Base table or view not found: 
1146 Table 'test.doesnotexist' doesn't exist
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich MySQL-Fehler aus der „prepare()'-Methode von PDO in PHP abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage