sql >> Databáze >  >> RDS >> Mysql

Ladění PDO – Zobrazit dotaz PO BIND?

To je nejběžnější mýtus o ladění SQL. "Potřebuji vidět dotaz po přípravě, abych mohl zjistit, zda došlo k chybě." Faktem je, že nemáte , a já vám řeknu proč.

Jakmile je dotaz připraven, lze zástupný symbol považovat za platný řetězec/celé číslo . Je vám jedno, co v něm je.

Pokud správně nastavíte PDO, získáte podrobnou PDOException s podrobným popisem chyby, kterou jste měli, spolu s úplným zpětným sledováním místa, kde k chybě došlo, a navíc získáte chybový řetězec z MySQL, díky kterému je velmi snadné najít syntaktické chyby.

Chcete-li povolit výjimky PDO a zakázat emulované přípravy:

$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. Jak vytvořím sekvenci v MySQL?

  2. jak najít první a poslední záznam z tabulky mysql

  3. Jak importovat VELKÉ soubory sql do tabulky mysql

  4. Azure Automation Methods