SERIAL
कॉलम INTEGER
. के रूप में संग्रहीत हैं s, उन्हें 2-1 का अधिकतम मान देते हैं। तो ~2 अरब निवेशों के बाद, आपका नया id
मान अब फ़िट नहीं होंगे।
यदि आप अपनी तालिका के जीवनकाल में इतने अधिक इंसर्ट की अपेक्षा करते हैं, तो इसे BIGSERIAL
के साथ बनाएं (आंतरिक रूप से एक BIGINT
, अधिकतम 2-1 के साथ)।
यदि आपको बाद में पता चलता है कि SERIAL
इतना बड़ा नहीं है, आप इसके साथ मौजूदा फ़ील्ड का आकार बढ़ा सकते हैं:
ALTER TABLE raw ALTER COLUMN id TYPE BIGINT;
ध्यान दें कि यह BIGINT
है यहाँ, बजाय BIGSERIAL
. के (जैसा कि सीरियल वास्तविक प्रकार नहीं हैं ) और ध्यान रखें कि, यदि आपकी तालिका में वास्तव में 2 बिलियन रिकॉर्ड हैं, तो इसमें कुछ समय लग सकता है...