این اروری که قصد صحبت در موردش و حل اون رو داریم بهنگام افزودن یه رکورد به جدول داخل پایگاه داده postgresql رخ میدهو
این متن اروری که من گذاشتم داخل جنگو به هنگام افزودن به جدول رخ داده بود و فرمت کاملش به شکل زیر بود:
django.db.utils.IntegrityError: duplicate key value violates unique constraint "accesslevel_accesslevelaction_pkey"
DETAIL: Key (id)=(11) already exists.
مشکل کجاست؟؟ خود جدول و کد ما مشکلی نداره و عملا پایگاه داده دچار مشکل شده!! ما میخوایم یه رکورد اضافه کنیم و پایگاه داده با توجه به ایندکس اون جدول به ما میگه که باید id رکورد جدید چی باشه که تو این مشکل عملا اون ایندکس رو داره اشتباه به ما میگه، مثلا میگه ایندکس ۱۱ رو باید استفاده کنی در صورتی که id با مقدار ۱۱ قبلا برای یه رکورد دیگه استفاده شده و در نتیجه ارور بالا رو خواهیم داشت
راه حل چیه!؟
کافیه ایندکس اون جدول رو با استفاده از دستور زیر داخل پایگاه داده رفرش و بروز کنیم:
SELECT setval('table_name_id_seq', max(id)) FROM table_name;
امیدوارم مفید بوده باشه:)