"घोषणात्मक तालिका विभाजन", जो अपने स्वयं के सिंटैक्स के साथ डीबीएमएस की प्रथम श्रेणी की विशेषता के रूप में विभाजन कर रहा है, PostgreSQL 10 में जोड़ा गया ।
पहले के संस्करणों में, आप "टेबल इनहेरिटेंस" का उपयोग करके थोड़ा और प्रयास करके समान प्रभाव प्राप्त कर सकते हैं। मैनुअल में एक पेज है जिसमें यह बताया गया है कि इसे मैन्युअल रूप से कैसे किया जाए ए> , संक्षेप में:
- "मास्टर" तालिका बनाएं, जिससे सभी विभाजन इनहेरिट करेंगे।
- कई "चाइल्ड" टेबल बनाएं, जिनमें से प्रत्येक मास्टर टेबल से इनहेरिट करें।
- प्रत्येक विभाजन में स्वीकृत कुंजी मानों को परिभाषित करने के लिए विभाजन तालिका में तालिका अवरोध जोड़ें।
- प्रत्येक विभाजन के लिए, कुंजी कॉलम (स्तंभों) पर एक अनुक्रमणिका बनाएं, साथ ही कोई अन्य अनुक्रमणिका जो आप चाहें।
- वैकल्पिक रूप से, मास्टर तालिका में डाले गए डेटा को उपयुक्त विभाजन पर पुनर्निर्देशित करने के लिए एक ट्रिगर या नियम को परिभाषित करें।
- सुनिश्चित करें कि postgresql.conf में Constraint_exclusion कॉन्फ़िगरेशन पैरामीटर अक्षम नहीं है। यदि ऐसा है, तो प्रश्नों को वांछित के रूप में अनुकूलित नहीं किया जाएगा।
इसे आसान बनाने के लिए, यदि आप संस्करण 10 में अपग्रेड नहीं कर सकते हैं, तो आप pg_partman<जैसे एक्सटेंशन का उपयोग कर सकते हैं /ए> जो आपको पार्टिशन सेट की स्थापना और प्रबंधन के लिए अतिरिक्त कार्य देता है।