Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Debugowanie PDO — wyświetlić zapytanie PO powiązaniu?

To najczęstszy mit dotyczący debugowania SQL. „Muszę zobaczyć zapytanie po przygotowaniu, aby móc stwierdzić, czy wystąpił błąd”. Faktem jest, nie , a powiem Ci dlaczego.

Po przygotowaniu zapytania symbol zastępczy można uznać za prawidłowy ciąg/liczbę całkowitą . Nie obchodzi cię, co w nim jest.

Ponadto, jeśli poprawnie skonfigurujesz PDO, otrzymasz szczegółowy PDOException wyszczególniając błąd, który wystąpił wraz z pełnym śladem miejsca, w którym wystąpił błąd, a ponadto otrzymujesz ciąg błędu z MySQL, co sprawia, że ​​błędy składniowe są bardzo łatwe do znalezienia.

Aby włączyć wyjątki PDO i wyłączyć emulowane przygotowania:

$pdo = new PDO("mysql:host=localhost;dbname=database_name", "user", "password");
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak zaktualizować bazę danych osCommerce z wersji 2.2 do wersji 2.3?

  2. Jak powiązać tabelę danych ze środowiskiem wykonawczym przeglądarki raportów

  3. Pisanie złożonego zapytania MySQL

  4. Jaka jest dokładna lokalizacja tabel bazy danych MySQL w folderze XAMPP?

  5. Sumuj wartości tablicy wielowymiarowej według klucza bez pętli