serial एक छद्म है डेटा प्रकार, वास्तविक डेटा प्रकार नहीं। यह एक integer है नीचे कुछ अतिरिक्त डीडीएल कमांड के साथ स्वचालित रूप से निष्पादित:
- एक क्रम बनाएं (डिफ़ॉल्ट रूप से मिलान नाम के साथ)।
- कॉलम सेट करें
NOT NULLऔर उस क्रम से आकर्षित करने के लिए डिफ़ॉल्ट। - कॉलम को अनुक्रम "स्वयं" बनाएं।
विवरण:
- Postgres में सीरियल प्राथमिक कुंजी कॉलम का उपयोग करने वाली तालिकाओं का सुरक्षित और सफाई से नाम बदलें?
एक bigserial वही है, जो एक bigint . के आसपास बनाया गया है कॉलम। आप bigint चाहते हैं , लेकिन आपने इसे पहले ही हासिल कर लिया है। किसी मौजूदा serial को बदलने के लिए एक bigserial . में कॉलम (या smallserial ), आपको बस ALTER . करना है कॉलम का डेटा प्रकार। अनुक्रम आमतौर पर bigint . पर आधारित होते हैं , इसलिए उसी क्रम का उपयोग किसी भी integer . के लिए किया जा सकता है टाइप करें।
एक bigint . को "बदलने" के लिए एक bigserial . में या एक integer एक serial . में , आपको बस बाकी काम हाथ से करना है:
- एक फ़ील्ड के लिए PostgreSQL अनुक्रम बनाना (जो रिकॉर्ड की आईडी नहीं है)
वास्तविक डेटा प्रकार अभी भी integer है / bigint . कुछ क्लाइंट जैसे pgAdmin डेटा प्रकार प्रदर्शित करेंगे serial रिवर्स इंजीनियर में CREATE TABLE स्क्रिप्ट, यदि किसी serial . के लिए सभी मानदंड मिले हैं।