sql >> データベース >  >> RDS >> PostgreSQL

IntegrityErrorの原因となる行を無視するDjangobulk_create?

    これはDjango2.2で可能になりました

    Django2.2は新しいignore_conflictsを追加します bulk_createのオプション メソッド、ドキュメントから:

    これをサポートするデータベース(PostgreSQL <9.5およびOracleを除くすべて)で、ignore_conflictsパラメーターをTrueに設定すると、データベースは、一意の値の重複などの制約に失敗する行の挿入の失敗を無視するようになります。このパラメーターを有効にすると、各モデルインスタンスでの主キーの設定が無効になります(データベースが通常それをサポートしている場合)。

    例:

    Entry.objects.bulk_create([
        Entry(headline='This is a test'),
        Entry(headline='This is only a test'),
    ], ignore_conflicts=True)
    


    1. SQL SERVER –トリック–異なるWindowsアカウントでSSMSを実行する

    2. WHERE col IN(...)条件の制限

    3. SQLバディ–WebベースのMySQL管理ツール

    4. SQLiteの日付から日数を引く