हमने पाया कि प्राथमिक कुंजियाँ अक्सर मुख्य तालिका के नाम से पिछड़ जाती हैं। इस स्क्रिप्ट ने हमें मुद्दों के साथ लोगों को पहचानने और उन्हें ठीक करने में मदद की।
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 वर्ण की सीमा को बाधा नामों (63bytes) के अधिकतम आकार के लिए जिम्मेदार है।
स्पष्ट रूप से समझें कि इसे चलाने से पहले क्या लौटा है। आशा है कि दूसरों के लिए उपयोगी है।