2014-10-29 7 views

उत्तर

6

MySQL तालिका विरासत का समर्थन नहीं करता है। कार्यक्षमता का अनुमान लगाने का एक ही तरीका है एक विदेशी कुंजी (जो MySQL में या तो बहुत अच्छा नहीं है) का उपयोग कर रहा है: जाहिर है

CREATE TABLE first (
    id serial, 
    PRIMARY KEY (id) 
); 

CREATE TABLE second (
    parent integer REFERENCES first, 
    PRIMARY KEY (parent) 
); 

, आप PostgreSQL से किसी भी विचारों और प्रश्नों को बदलने के लिए होगा "विरासत संस्करण "नियमित बहु-संबंध प्रश्नों के लिए।

+0

क्या कोई विशिष्ट कारण है (जैसे प्रदर्शन संबंधित) कि MySQL इसका समर्थन नहीं कर रहा है? – sajadkk

+0

@ सज़ादक मैं विरासत के साथ प्रदर्शन मुद्दों से अवगत नहीं हूं, लेकिन यह अपेक्षाकृत नई अवधारणा है और अभी भी कुछ कार्यान्वयन कमियां हैं। PostgreSQL विरासत SQL-compliant नहीं है, उदाहरण के लिए, और सभी बाधाओं को विरासत में नहीं मिला है इसलिए विरासत के साथ काम करते समय वास्तव में सावधान रहना चाहिए। (MySQL, आकस्मिक रूप से, PostgreSQL की तुलना में बहुत कम SQL-मानक अनुपालन है, हालांकि मैंने हाल ही में सुधारों की जांच नहीं की है।) जब तक कि आपको वास्तव में * कुछ डेटा मॉडल कारणों के लिए विरासत की आवश्यकता नहीं होती है, तो आप शायद मानक संबंध संरचना के साथ बेहतर हो जाते हैं। – Patrick

+2

"* लेकिन यह अपेक्षाकृत नई अवधारणा है *" - वास्तव में यह सच नहीं है। ऑब्जेक्ट रिलेशनल अवधारणाएं संबंधपरक डेटा मॉडल की तुलना में 80 के –

संबंधित मुद्दे