PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

क्यों PG::UniqueViolation:ERROR:डुप्लिकेट कुंजी मान अद्वितीय बाधा का उल्लंघन करता है?

समस्या को ठीक करने के लिए, हमें तालिका के अनुक्रम को देखने के लिए ActiveRecord को बताना होगा:

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

अब ActiveRecord में सही अनुक्रम मान होना चाहिए, और नई आईडी को ठीक से असाइन करने में सक्षम होना चाहिए।

त्रुटि का समाधान करने के लिए

<ब्लॉककोट>

PG::UniqueViolation:ERROR:डुप्लिकेट कुंजी मान अद्वितीय बाधा "moderations_reportable" का उल्लंघन करता है विवरण:कुंजी (reportable_type, reportable_id)=(Post, 25) पहले से मौजूद है। :INSERT INTO "मॉडरेशन" ("blog_id", "reportable_type", "reportable_id", "created_at", "updated_at", "blog_type") VALUES ($1, $2, $3, $4, $5, $6) रिटर्निंग "id"

चूंकि 'मॉडरेशन' टेबल पर त्रुटि हुई।

रेल कंसोल से निम्नलिखित चलाएँ ठीक करें

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

धन्यवाद



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. डेटाबेस त्रुटि:वर्तमान लेनदेन निरस्त कर दिया गया है, लेनदेन ब्लॉक के अंत तक आदेशों को अनदेखा कर दिया गया है?

  2. मैं PostgreSQL 9.1+ में मॉड्यूल कैसे आयात करूं या एक्सटेंशन कैसे स्थापित करूं?

  3. PG::त्रुटि:SELECT DISTINCT, ORDER BY एक्सप्रेशन चुनिंदा सूची में दिखना चाहिए

  4. सबक्वेरी का उपयोग करके पोस्टग्रेज में टेबल पंक्तियों को अपडेट करना

  5. PostgreSQL मल्टी INSERT...कई कॉलम के साथ रिटर्निंग