Maison > Article > développement back-end > Comment afficher les requêtes SQL exécutées par Django ?
Dépannage des requêtes SQL de Django
Cette question examine les méthodes d'affichage des requêtes SQL exécutées par Django lors des opérations de requête.
Solution :
Selon la FAQ de la documentation Django, Django propose deux options pour inspecter les requêtes SQL :
<code class="python">from django.db import connection print(connection.queries)</code>
<code class="python">print(MyModel.objects.filter(name="my name").query)</code>
Remarque : Le résultat de la requête affiché par ces méthodes n'est pas une syntaxe SQL valide. Django n'interpole jamais les paramètres de requête, mais envoie la requête et les paramètres séparément à l'adaptateur de base de données pour exécution, garantissant ainsi l'intégrité des données. Par conséquent, n'exécutez pas le résultat de la requête directement dans une base de données.
Pour réinitialiser la liste des requêtes, par exemple, pour surveiller le nombre de requêtes exécutées dans un laps de temps spécifique, utilisez reset_queries de 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>
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!