sql >> Databasteknik >  >> RDS >> PostgreSQL

varför PG::UniqueViolation:FEL:dubblettnyckelvärde bryter mot unik begränsning?

För att åtgärda problemet måste vi berätta för ActiveRecord att titta på tabellens sekvens:

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

Nu bör ActiveRecord ha rätt sekvensvärde och bör kunna tilldela nya id:n korrekt.

För att lösa fel

PG::UniqueViolation:FEL:Duplicerat nyckelvärde bryter mot den unika begränsningen "moderations_reportable" DETAIL:Nyckel (reportable_type, reportable_id)=(Post, 25) finns redan. :INFO I "moderations" ("blog_id", "reportable_type", "reportable_id", "created_at", "updated_at", "blog_type") VÄRDEN ($1, $2, $3, $4, $5, $6) RETURNERAR "id"

Eftersom ett fel uppstod i tabellen "moderering".

Kör följande från rails console fixa

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

Tack



  1. radera kolumnen finns inte

  2. MySQL - Hur söker man efter exakt ordmatchning med LIKE?

  3. Hur kan jag säkerställa att en materialiserad vy alltid är uppdaterad?

  4. PDO anslutningstest