Wenn Sie mit Doctrine, einem PHP-ORM, arbeiten, müssen Sie möglicherweise das an die Datenbank gesendete Roh-SQL untersuchen, um es zu überprüfen Syntax ändern oder deren Leistung optimieren. Allerdings gibt die Methode $q->getSQLQuery() nur die vorbereitete Anweisung zurück und hinterlässt Fragezeichen (?) anstelle der tatsächlichen Parameter.
Der Grund dafür ist, dass Doctrine vorbereitete Anweisungen verwendet, die Verbessern Sie die Sicherheit und Leistung der Datenbank. Es unterteilt den Abfrageprozess in zwei Schritte: Vorbereiten der Anweisung und Senden der Parameter. Die Methode $query->getSql() gibt nur die vorbereitete Anweisung zurück, während die Methode $query->getParameters() die tatsächlichen Werte bereitstellt.
Daher existiert keine „echte“ SQL-Abfrage auf der PHP-Seite, und Doctrine kann es nicht anzeigen. Stattdessen müssen Sie die Abfrage manuell mit den von $query->getParameters() abgerufenen Parametern erstellen oder ein Tool wie EXPLAIN PLAN von MySQL verwenden, um die Ausführung der Abfrage zu verfolgen.
Das obige ist der detaillierte Inhalt vonWie kann ich die tatsächliche SQL-Abfrage in Doctrine sehen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!