Existe-t-il un moyen pratique de demander à un objet de base de données particulier d'imprimer sa requête?
De temps en temps, j'écris un DBTNG db_op () dans un module, et bien trop souvent, je ne comprends pas très bien les requêtes.
Je sais que devel peut générer le journal des requêtes, mais ce sont toutes des requêtes, ce qui, dans ce type de situation, est le plus souvent un problème.
je veux faire
$result = db_select('node', 'n')->fields('n')->execute();
dpm($result->queryWithParameters);
dpm($result->finalQuery);
;)
Je sais que c'est une vieille question mais j'espère que cette réponse pourrait être utile à d'autres personnes: fondamentalement, le noyau Drupal a sa propre classe DatabaseLog . Vous pouvez l'utiliser dans les cas où vous n'avez pas de module Devel disponible (comme peut-être le débogage de production de requêtes lentes?):
la source