... を管理する ¶ Django のデフォルトのトランザクションの動作 ¶ Django のデフォルトの動作は、オートコミットモードで実行することです。トランザクションがアクティブでない限り、各クエ ... リは即座にデータベースにコミットされます。 詳しくは下記を参照してください 。 Django は、自動的にトランザクションやセーブポイントを使い、特に delete() と update() クエリにおいて、複数のクエリを要求する ORM 操作の信頼性を担保します。 Djan ... go の TestCase クラスは、パフォーマンス向上のため、各テストをトランザクションでラップします。 HTTP リクエストにトランザクションを結びつける ¶ ウェブ上でトランザクションを扱う一般的な方法は、各リクエスト ... ... を管理する ¶ Django のデフォルトのトランザクションの動作 ¶ Django のデフォルトの動作は、オートコミットモードで実行することです。トランザクションがアクティブでない限り、各クエ ... リは即座にデータベースにコミットされます。 詳しくは下記を参照してください 。 Django は、自動的にトランザクションやセーブポイントを使い、特に delete() と update() クエリにおいて、複数のクエリを要求する ORM 操作の信頼性を担保します。 Djan ... go の TestCase クラスは、パフォーマンス向上のため、各テストをトランザクションでラップします。 HTTP リクエストにトランザクションを結びつける ¶ ウェブ上でトランザクションを扱う一般的な方法は、各リクエスト ... ... 。PostgreSQLがカーソルクエリで取得する行数に関する仮定を制御するには、 cursor_tuple_fraction オプションを使用してください。 トランザクションプールとサーバーサイドカーソル ¶ トランザクションプーリングモード(たとえば、 PgBouncer )で接続プーラを使用するには、その接 ... サイドカーソルを無効にする必要があります。 サーバーサイドカーソルは接続に対してローカルに存在し、 AUTOCOMMIT が True の場合、トランザクションの終了時にも接続をオープンしたままにします。後続のトランザクションはサーバーサイドカーソルからより多くの結果を取得しようとす ... るかもしれません。トランザクションプーリングモードでは、後続のトランザクションが同じ接続を使用するという保証はありません。異なる接続が使用される場合、トランザ ... ... 。PostgreSQLがカーソルクエリで取得する行数に関する仮定を制御するには、 cursor_tuple_fraction オプションを使用してください。 トランザクションプールとサーバーサイドカーソル ¶ トランザクションプーリングモード(たとえば、 PgBouncer )で接続プーラを使用するには、その接 ... サイドカーソルを無効にする必要があります。 サーバーサイドカーソルは接続に対してローカルに存在し、 AUTOCOMMIT が True の場合、トランザクションの終了時にも接続をオープンしたままにします。後続のトランザクションはサーバーサイドカーソルからより多くの結果を取得しようとす ... るかもしれません。トランザクションプーリングモードでは、後続のトランザクションが同じ接続を使用するという保証はありません。異なる接続が使用される場合、トランザ ... ... Lはスキーマのサポートという点で、ここにあるすべてのデータベースの中で最も有能です。 MySQL ¶ MySQL はスキーマの変更操作周りのトランザクションをサポートしていません。つまり、マイグレーションの適用が失敗した場合には、手動で変更点を調べあげ、やり直さなければならないと ... 分で修正する必要があります。でも、難しくないので心配はいりません。詳しくは、下の マイグレーションファイル で説明しています。 トランザクション ¶ DDL トランザクションをサポートしているデータベース (SQLite や PostgreSQL) では、すべてのマイグレーション操作はデフォルト ... で単一のトランザクション内で実行されます。一方、データベースが DDL トランザクションをサポートしていない場合 (MySQL や Oracle など)、すべての操作はト ... ... Lはスキーマのサポートという点で、ここにあるすべてのデータベースの中で最も有能です。 MySQL ¶ MySQL はスキーマの変更操作周りのトランザクションをサポートしていません。つまり、マイグレーションの適用が失敗した場合には、手動で変更点を調べあげ、やり直さなければならないと ... 分で修正する必要があります。でも、難しくないので心配はいりません。詳しくは、下の マイグレーションファイル で説明しています。 トランザクション ¶ DDL トランザクションをサポートしているデータベース (SQLite や PostgreSQL) では、すべてのマイグレーション操作はデフォルト ... で単一のトランザクション内で実行されます。一方、データベースが DDL トランザクションをサポートしていない場合 (MySQL や Oracle など)、すべての操作はト ... ... エンド (PostgreSQL 以外) では、 Django は SQL を実行する前に個々の文に分割します。 警告 PostgreSQL と SQLite では、Django のトランザクション状態を壊さないように、 ノンアトミックなマイグレーション の SQL で BEGIN か COMMIT だけを使ってください。 文字列もしくは 2 値 ... バージョン管理された ORM およびマイグレーションの自動検出機構が正常に動作しなくなってしまいます。 標準では RunPython は DDL トランザクションをサポートしないデータベース (たとえば MySQL と Oracle など) 上では通常のトランザクション内で記述された内容の処理を行います。 ... 用しようとするとクラッシュを引き起こす場合があります。このような場合は、 RunPython に対して atomic=False を渡してください。 トランザクション中の DDL 使用をサポートしているデータベース(SQLite や PostgreSQL)においては、 RunPython は各マイグレーションに対して作成され ... ... エンド (PostgreSQL 以外) では、 Django は SQL を実行する前に個々の文に分割します。 警告 PostgreSQL と SQLite では、Django のトランザクション状態を壊さないように、 ノンアトミックなマイグレーション の SQL で BEGIN か COMMIT だけを使ってください。 文字列もしくは 2 値 ... バージョン管理された ORM およびマイグレーションの自動検出機構が正常に動作しなくなってしまいます。 標準では RunPython は DDL トランザクションをサポートしないデータベース (たとえば MySQL と Oracle など) 上では通常のトランザクション内で記述された内容の処理を行います。 ... 用しようとするとクラッシュを引き起こす場合があります。このような場合は、 RunPython に対して atomic=False を渡してください。 トランザクション中の DDL 使用をサポートしているデータベース(SQLite や PostgreSQL)においては、 RunPython は各マイグレーションに対して作成され ... ... eld の後でかつ RunPython の前に作成されたオブジェクトは、元の uuid が上書きされます。 非アトミックのマイグレーション ¶ DDL トランザクションをサポートしているデータベース (SQLite と PostgreSQL) では、マイグレーションはデフォルトでトランザクション内で実行されます。 ... 大きなテーブルに対してデータ移行を行う場合などには、 atomic 属性を False に設定することで、トランザクション内で移行が実行されないようにすることができます: from django.db import migrations class Migration ( migrations . Migration ): ... gration ( migrations . Migration ): atomic = False operations = [ migrations . RunPython ( gen_uuid ), ] atomic 属性は DDL トランザクションをサポートしていないデータベース (MySQL や Oracle など) には影響しません。(MySQLの atomic DDL statement support は、ロールバ ... ... eld の後でかつ RunPython の前に作成されたオブジェクトは、元の uuid が上書きされます。 非アトミックのマイグレーション ¶ DDL トランザクションをサポートしているデータベース (SQLite と PostgreSQL) では、マイグレーションはデフォルトでトランザクション内で実行されます。 ... 大きなテーブルに対してデータ移行を行う場合などには、 atomic 属性を False に設定することで、トランザクション内で移行が実行されないようにすることができます: from django.db import migrations class Migration ( migrations . Migration ): ... gration ( migrations . Migration ): atomic = False operations = [ migrations . RunPython ( gen_uuid ), ] atomic 属性は DDL トランザクションをサポートしていないデータベース (MySQL や Oracle など) には影響しません。(MySQLの atomic DDL statement support は、ロールバ ... 2026年10月08日