„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie kann ich die endgültige SQL-Abfrage in PHP mit PDO nach Parameterersetzung ermitteln?

Wie kann ich die endgültige SQL-Abfrage in PHP mit PDO nach Parameterersetzung ermitteln?

Veröffentlicht am 07.11.2024
Durchsuche:832

How Can I Determine the Final SQL Query in PHP with PDO After Parameter Substitution?

Bestimmen der endgültigen parametrisierten SQL-Abfrage in PHP mit PDO

Für parametrisierte Abfragen in PHP mit PDO beim Zugriff auf eine MySQL-Datenbank, Erhalten der endgültigen Eine SQL-Abfrage nach der Token-Ersetzung kann eine Herausforderung sein. Die PHP-Umgebung behält nicht die vollständige Abfrage bei, da sie die Abfrage mit Token getrennt von den Parametern an die Datenbank sendet.

Antwort 1:

Wie Ben James angedeutet hat, Das Extrahieren der endgültigen Abfrage auf der PHP-Seite ist nicht möglich. Auf der Serverseite existiert diese Abfrage. Selbst benutzerdefinierte Funktionen für die Token-Ersetzung replizieren den SQL-Prozess aufgrund von Nuancen in der Token-Verarbeitung möglicherweise nicht genau.

Antwort 2:

Eine von Kailash Badu vorgeschlagene Problemumgehung beinhaltet Protokollierung aller SQL-Abfragen, um die tatsächliche Datenbankausführung zu beobachten. Um dies in MySQL zu tun, aktualisieren Sie die Datei my.cnf (my.ini für Windows-Benutzer), indem Sie die Zeile hinzufügen:

log=[REPLACE_BY_PATH]/[REPLACE_BY_FILE_NAME]

Achtung :

Verwenden Sie diesen Ansatz nicht in Produktionsumgebungen, da er Leistung und Sicherheit beeinträchtigen kann.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3