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

tại sao PG ::UniqueViolation:LỖI:giá trị khóa trùng lặp vi phạm ràng buộc duy nhất?

Để khắc phục sự cố, chúng tôi phải yêu cầu ActiveRecord xem xét trình tự của bảng:

ActiveRecord::Base.connection.reset_pk_sequence!('table_name')

Bây giờ ActiveRecord phải có giá trị trình tự chính xác và có thể chỉ định id mới đúng cách.

Để giải quyết lỗi

PG ::UniqueViolation:LỖI:giá trị khóa trùng lặp vi phạm ràng buộc duy nhất "moderations_reportable" DETAIL:Key (reportable_type, reportable_id) =(Post, 25) đã tồn tại. :CHÈN VÀO "kiểm duyệt" ("blog_id", "reportable_type", "reportable_id", "create_at", "updated_at", "blog_type") GIÁ TRỊ ($ 1, $ 2, $ 3, $ 4, $ 5, $ 6) QUAY LẠI "id"

Như đã xảy ra lỗi trên bảng 'kiểm duyệt'.

Chạy phần sau từ bảng điều khiển rails sửa chữa

ActiveRecord::Base.connection.reset_pk_sequence!('moderations')

Xin cảm ơn



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tôi muốn khôi phục cơ sở dữ liệu bằng một giản đồ khác

  2. Cách kiểm tra ngày trùng lặp trong PostgreSQL

  3. Làm thế nào để nhận được sự khác biệt của ngày / tháng / năm (ngày thứ hai) giữa hai ngày?

  4. Quản lý kết nối trong PostgreSQL:Hướng dẫn

  5. Các chế độ xem PostgreSQL security_barrier hoạt động như thế nào?