appagante accettato risposta, è possibile utilizzare il codice seguente dopo l'esecuzione di query.
\Propel::getConnection()->getLastExecutedQuery() // Returns fully qualified SQL
Esso permette di vedere il query full (tra cui selezionare le colonne ei parametri recuperati), che è stato trasmesso a database.
UPD: (come menzionato da @bbird)
Questo comando non emetterà nulla a meno che useDebug
è true
:
\Propel::getConnection()->useDebug(true);
UPD2: (se si utilizza Symfony quadro)
Una cosa più degno di nota è PropelORM + Symfony.
Se è necessario tracciare SQL è possibile utilizzare i registri. Propel ha il proprio canale monolog chiamato propel
e le query completamente qualificate vengono registrate con il livello di registrazione DEBUG
sul canale rilevante (propel.DEBUG
).
Record di registro/interrogazione si presenta così:
[2016-10-04 17:00:46] propel.DEBUG: time: 0.000 sec | mem: 24.8 MB | connection: default | SELECT `id`, `username`, `email`, `last_login` FROM `users` WHERE `id` = 123 [] []
fonte
2014-10-17 11:00:52
così semplice ... :) – twigmac
Si noti che non sarà possibile ottenere specifiche 'colonne select' nella query precedente - Propel fa che a destra prima del ritrovamento . Quindi devi vedere qualcosa del tipo: 'SELECT FROM book WHERE id =: p1; ...: p1 => 25' – jakerella
@jakerella: puoi spiegarlo in una risposta? Non sono sicuro che chiarisca come fare ciò che stai suggerendo. – halfer