Badraoui نشر 19 يناير 2016 أرسل تقرير نشر 19 يناير 2016 (معدل) أردت تحديث بعض البيانات على Rails وَ postgreSQL بالإعتماد على Id، حيث بنية الجدول:Lecture(id, name, etc.)كمثال على البيانات:(id: 1, name: "first")وعند استعمال:Lecture.create(id: 1, name: "newer")أحصل على الخطأ التالي:PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "lectures_pkey"كيف أتجاوز هذا الخطأ؟ تم التعديل في 19 يناير 2016 بواسطة Badraoui اقتباس
2 E.Nourddine نشر 21 يناير 2016 أرسل تقرير نشر 21 يناير 2016 من خلال الخطأ الظاهر على إطار العمل Rails:PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "lectures_pkey"مما يعني أنّ:Id هو القيمة الافتراضية لـ Primary Key، أي أنه لا يمكن تغييره أو تكرار قيمته، لأنك وببساطة أضفت قيمة على الجدول تحتوي id سبق وتم إدخاله، مما أدى إلى رفع خطأ وإظهار الرسالة السابقة.لتفادي ذلك، وتغيير قيمة name الخاصة بـ lecteur.id=1 مثلاً، نستعمل الطريقة التالية:@lecture = Lecture.find(1) @lecture.update_attributes(name: "newer")حيث قمنا بالبحث على السطر المراد تغييره على قاعدة البيانات من خلال استخدام الوظيفة find ثم تغيير الحقل name.ملاحظة هامة: يعتبر id هو الحقل المعرّف للبيانات الموجودة على القاعدة، ويمنع تغيير أو تكراره حتى تبقى البيانات صالحة منطقيا. 1 اقتباس
السؤال
Badraoui
أردت تحديث بعض البيانات على Rails وَ postgreSQL بالإعتماد على Id، حيث بنية الجدول:
كمثال على البيانات:
وعند استعمال:
أحصل على الخطأ التالي:
كيف أتجاوز هذا الخطأ؟
تم التعديل في بواسطة Badraoui1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.