Heim > Artikel > Backend-Entwicklung > Wie kann ich von Django ausgeführte SQL-Abfragen anzeigen?
Fehlerbehebung bei Djangos SQL-Abfragen
Diese Frage untersucht Methoden zum Anzeigen der von Django während Abfragevorgängen ausgeführten SQL-Abfragen.
Lösung:
Laut Häufig gestellte Fragen zur Django-Dokumentation: Django bietet zwei Optionen zum Überprüfen von SQL-Abfragen:
<code class="python">from django.db import connection print(connection.queries)</code>
<code class="python">print(MyModel.objects.filter(name="my name").query)</code>
Hinweis: Die von diesen Methoden angezeigte Abfrageausgabe ist keine gültige SQL-Syntax. Django interpoliert niemals Abfrageparameter, sondern sendet die Abfrage und die Parameter stattdessen separat zur Ausführung an den Datenbankadapter, um die Datenintegrität sicherzustellen. Führen Sie die Abfrageausgabe daher nicht direkt in einer Datenbank aus.
Um die Abfrageliste zurückzusetzen, um beispielsweise die Anzahl der innerhalb eines bestimmten Zeitraums ausgeführten Abfragen zu überwachen, verwenden Sie reset_queries von django.db:
<code class="python">from django.db import reset_queries from django.db import connection reset_queries() # Execute your query here print(connection.queries) # Returns an empty list</code>
Das obige ist der detaillierte Inhalt vonWie kann ich von Django ausgeführte SQL-Abfragen anzeigen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!