Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: PDO i wyświetlanie błędów
Forum PHP.pl > Forum > PHP
lucassus
Czy da się zmusić PDO by wyświetlało pełne zapytanie SQL,
które powoduje błąd?
Oczywiście opcja taka będzie włączana tylko w środowisku
developerskim.. uprzedzam wszelkie uwagi winksmiley.jpg

Błędy w stylu:
Kod
SQLSTATE[23502]: Not null violation: 7 ERROR:  null value in column    
\"name\" violates not-null constraint

lub poucinane zapytania:
Kod
#2 /var/www/redmachine/lib/Doctrine/Connection.php(673):    
Doctrine_Connection->exec('INSERT INTO sli...', Array)<br    
/>

niestety nie pomagają mi zbytnio w znalezieniu błędu w
kodzie.
sf
Wg mnie jest napisane dokładnie w czym problem. Masz ustawione by kolumna "name" była NOT NULL i najwidoczniej nie wstawiasz tam żadnej wartości więc baza "krzyczy".

Nie można w PDO podejrzeć co za wartości ustawiłeś.
wrzasq
@sf: za bardzo nie pomogles tongue.gif.

@lucassus: jesli wlaczysz raportowanie bledow w formie wyjatkow to bedziesz mogl podejrzec parametry wywolan z trace'a zlapanego wyjatku:

  1. <?php
  2. $pdo = new PDO('mysql:host=localhost;dbname=database', 'user', 'pass');
  3. $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  4.  
  5. try
  6. {
  7.    $pdo->query('select foo from categories where doo = fsda and tralal or x');
  8. }
  9. catch(PDOException $e)
  10. {
  11.    print_r( $e->getTrace() );
  12. }
  13. ?>
lucassus
Cytat(wrzasq @ 8.10.2008, 20:03:12 ) *
@sf: za bardzo nie pomogles tongue.gif .


hehe.. trzeba jakoś nastukać te > 1k postów winksmiley.jpg
ps. jakkogoś uraziłem to z góry przepraszam

ps.2
Bardzo konkretne odpowiedzi (zresztą już nie pierwszy raz) otrzymałem na forum GL:
http://www.goldenline.pl/forum/php/538280
sf
E tam, po prostu nie przeczytałem dokładnie o co chodziło w poście. Zobaczyłem błąd to napisałem w czym tkwi problem winksmiley.jpg

Natomiast problem ucinania zapytań nie dotyczy tylko PDO, był od zawsze w PHP, ale jak już wszystko wiesz to tylko robić winksmiley.jpg
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.