sql >> Database teknologi >  >> RDS >> PostgreSQL

hvorfor PG::UniqueViolation:FEJL:duplikeret nøgleværdi overtræder unik begrænsning?

For at løse problemet skal vi bede ActiveRecord om at se på rækkefølgen af ​​tabellen:

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

Nu skulle ActiveRecord have den korrekte sekvensværdi og skulle være i stand til at tildele nye id'er korrekt.

For at løse fejl

PG::UniqueViolation:FEJL:duplikatnøgleværdi overtræder unik begrænsning "moderations_reportable" DETAIL:Nøgle (reportable_type, reportable_id)=(Post, 25) eksisterer allerede. :INDSÆT I "moderations" ("blog_id", "reportable_type", "reportable_id", "created_at", "updated_at", "blog_type") VÆRDIER ($1, $2, $3, $4, $5, $6) RETURNERER "id"

Da der opstod en fejl i tabellen "modereringer".

Kør følgende fra rails-konsollen rette

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

Tak



  1. MySQL-forespørgsel GRUPPER EFTER dag / måned / år

  2. Parse kommasepareret streng for at lave IN Liste over strenge i Where-sætningen

  3. mySQL Returnerer top 5 i hver kategori

  4. Hvad er trinene i databasedesign?