PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

SQL:ENUM बनाम एक-से-अनेक संबंध के लाभ?

उदाहरण PostgreSQL का उपयोग करके दिखाया गया है, लेकिन अन्य RDBMS का सिंटैक्स समान है

यह गलत है। यह एक आईएसओ/आईईसी/एएनएसआई एसक्यूएल आवश्यकता नहीं है, इसलिए वाणिज्यिक डेटाबेस इसे प्रदान नहीं करते हैं (आप लुकअप टेबल प्रदान करने वाले हैं)। शहर का छोटा छोर विभिन्न "अतिरिक्त" लागू करता है, लेकिन शहर के बड़े छोर की सख्त आवश्यकताओं, या घुरघुराहट को लागू नहीं करता है।

हमारे पास डेटा प्रकार के हिस्से के रूप में ENUM नहीं हैं, जो बेतुका है।

ENUM का पहला नुकसान यह है कि यह गैर-मानक है और इसलिए पोर्टेबल नहीं है।

ENUMs का दूसरा बड़ा नुकसान यह है कि डेटाबेस Closed होता है। सैकड़ों रिपोर्ट टूल जिनका उपयोग डेटाबेस (ऐप से स्वतंत्र) पर किया जा सकता है, उन्हें नहीं ढूंढ सकते हैं, और इसलिए नाम/अर्थ प्रोजेक्ट नहीं कर सकते हैं। यदि आपके पास एक सामान्य मानक SQL लुकअप तालिका थी, तो वह समस्या समाप्त हो जाती है।

तीसरा, जब आप मान बदलते हैं, तो आपको डीडीएल बदलना होगा। एक सामान्य मानक SQL डेटाबेस में, आप केवल लुकअप तालिका में एक पंक्ति सम्मिलित/अद्यतन/हटाते हैं।

अंत में, आप आसानी से ENUM की सामग्री की सूची प्राप्त नहीं कर सकते; आप लुकअप टेबल के साथ कर सकते हैं। अधिक महत्वपूर्ण, आपके पास किसी भी आयाम-तथ्य क्वेरी को निष्पादित करने के लिए एक वेक्टर है, जिससे बड़ी तथ्य तालिका और GROUP BY से चयन करने की आवश्यकता समाप्त हो जाती है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. पोस्टग्रेज जीआईएसटी बनाम बीट्री इंडेक्स

  2. जेपीए के साथ पोस्टग्रेज JSONB डेटाटाइप का उपयोग कैसे करें?

  3. Postgres में बीजीय डेटा प्रकार

  4. प्रदर्शन ट्यूनिंग:बूलियन कॉलम के लिए इंडेक्स बनाएं

  5. Grails के साथ Postgresql का उपयोग करना:अनुक्रम या तालिका गुम है:hibernate_sequence