Maison > base de données > tutoriel mysql > Comment puis-je voir la requête SQL « réelle » dans Doctrine lorsqu'elle utilise des instructions préparées ?

Comment puis-je voir la requête SQL « réelle » dans Doctrine lorsqu'elle utilise des instructions préparées ?

DDD
Libérer: 2024-10-31 03:49:30
original
1108 Les gens l'ont consulté

How Can I See the

Explorer le SQL caché avec Doctrine : découvrez les secrets de la déclaration préparée

Supposons que vous travailliez avec Doctrine et que vous ayez méticuleusement élaboré une requête comme celle-ci :

$q = Doctrine_Query::create()->select('id')->from('MyTable');
Copier après la connexion

Maintenant, alors que vous affinez votre requête avec des conditions telles que :

$q->where('normalisedname = ? OR name = ?', array($string, $originalString));
Copier après la connexion

Vous avez hâte d'examiner le SQL brut avant l'exécution. Alors, vous appelez :

$q->getSQLQuery();
Copier après la connexion

Mais hélas, ce n'est pas ce à quoi vous vous attendiez - c'est une déclaration préparée avec des points d'interrogation. Vous voulez voir ce qui sera envoyé à la base de données.

Eh bien, voici la vérité : Doctrine n'envoie pas de "vrai" SQL au serveur de base de données. Il utilise des instructions préparées, un processus en trois étapes :

  • Envoi de l'instruction préparée pour préparation
  • Passer les paramètres séparément
  • Exécuter l'instruction préparée

Cela signifie qu'il n'y a jamais de "vraie" requête SQL du côté PHP - donc, Doctrine ne peut pas l'afficher.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal