Django によって実行される SQL クエリの表示
クエリを実行するとき、Django は開発者には表示されない SQL コマンドを実行します。ただし、これらのクエリを監視し、その内容を検査する方法があります。
クエリ リストにアクセス
Django は、実行されたすべてのクエリのリストを django.db.connection に保存します。クエリ。これらのクエリを表示するには:
<code class="python">from django.db import connection print(connection.queries)</code>
クエリセットからクエリを取得
データベース クエリを表すクエリセットには、実行される生の SQL を含むクエリ属性があります。
<code class="python">print(MyModel.objects.filter(name="my name").query)</code>
出力制限に関する注意
次のように、表示される SQL は構文的に有効ではない可能性があることに注意することが重要です。
「Django は実際に補間することはありません」パラメータ: クエリとパラメータをデータベース アダプタに個別に送信し、データベース アダプタが適切な操作を実行します。
これは、表示されたクエリをデータベース上で直接実行できないことを意味します。
クエリのリセット
たとえば、特定の期間内に実行されたクエリをカウントするためにクエリ リストをリセットする必要がある場合は、django.db:
<code class="python">from django.db import reset_queries from django.db import connection reset_queries() # Run your query here print(connection.queries) >>> []</code>のreset_queries を使用します。
以上がDjango によって実行された SQL クエリを表示するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。