PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Django số lượng lớn_create với các hàng bỏ qua gây ra lỗi IntegrityError?

Điều này hiện có thể thực hiện được trên Django 2.2

Django 2.2 thêm một ignore_conflicts mới tùy chọn cho bulk_create phương pháp, từ tài liệu:

Trên cơ sở dữ liệu hỗ trợ nó (tất cả ngoại trừ PostgreSQL <9.5 và Oracle), việc đặt tham số ignore_conflicts thành True cho cơ sở dữ liệu biết để bỏ qua lỗi chèn bất kỳ hàng nào không có ràng buộc, chẳng hạn như các giá trị duy nhất trùng lặp. Bật tham số này sẽ vô hiệu hóa việc thiết lập khóa chính trên mỗi phiên bản mô hình (nếu cơ sở dữ liệu thường hỗ trợ nó).

Ví dụ:

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Postgresql DROP TABLE không hoạt động

  2. Đặt lại giá trị trình tự là 1

  3. SAU KHI LOGON (Oracle) kích hoạt trong PostgreSQL với phần mở rộng - login_hook

  4. Làm cách nào để làm cho Java và Postgres enums hoạt động cùng nhau để cập nhật?

  5. Postgres:CHÈN nếu chưa tồn tại