আমরা দেখতে পেয়েছি যে প্রাথমিক কীগুলি প্রায়শই মূল টেবিলের নাম থেকে পিছনে থাকে। এই স্ক্রিপ্টটি আমাদের সমস্যাগুলি চিহ্নিত করতে এবং এটি ঠিক করতে সহায়তা করে।
select
table_name,
constraint_name ,
'ALTER TABLE ' || table_name || ' RENAME CONSTRAINT ' || constraint_name || ' TO ' || left(table_name, 58) || '_pkey;'
from information_schema.table_constraints tc
where constraint_type = 'PRIMARY KEY'
and constraint_name <> left(table_name, 58) || '_pkey';
এটি এমন সমস্ত সারণী সন্ধান করে যেখানে প্রাথমিক কী নামটি আর "ডিফল্ট" প্যাটার্ন ( <tablename>_pkey
) নয় এবং প্রতিটিটির জন্য একটি নতুন নাম স্ক্রিপ্ট তৈরি করে।
উপরের কোডে 58 টি চরিত্রের সীমাটি সীমাবদ্ধতার নামের সর্বাধিক আকারের (63 বাইটস) জন্য অ্যাকাউন্টে রয়েছে।
স্পষ্টতই ইন্দ্রিয়টি পরীক্ষা করার আগে এটি কী ফিরে আসে তা পরীক্ষা করে দেখুন। আশা করি এটি অন্যদের জন্য সহায়ক।