हमारी पिछली साप्ताहिक बैठक के दौरान, एक व्यक्ति जिसके पास डेटाबेस प्रशासन में कोई पृष्ठभूमि का अनुभव नहीं है, इस प्रश्न को लाया:
"क्या कोई ऐसा परिदृश्य होगा जो कई लाइनों के बजाय डेटा इन-लाइन (स्ट्रिंग) को सही ठहराता है?"
आइए हम एक तालिका को कहते हैं countryStates
जहां हम किसी देश के राज्यों को संग्रहीत करना चाहते हैं; मैं इस उदाहरण के लिए यूएसए का उपयोग करूंगा और आलस्य के लिए सभी राज्यों को सूचीबद्ध नहीं करूंगा।
वहां हमारे दो कॉलम होंगे; एक ने फोन किया Country
और दूसरे ने फोन किया States
। जैसा कि यहां चर्चा की गई है , और @ srutzky के उत्तर द्वारा प्रस्तावित , आईएसओ 3166-1 अल्फा -3PK
द्वारा परिभाषित कोड होगा ।
हमारी तालिका इस तरह दिखाई देगी:
+---------+-----------------------+-------------------------------------------------------+
| Country | States | StateName |
+---------+-----------------------+-------------------------------------------------------+
| USA | AL, CA, FL,OH, NY, WY | Alabama, California, Florida, Ohio, New York, Wyoming |
+---------+-----------------------+-------------------------------------------------------+
जब एक मित्र डेवलपर से यही सवाल पूछा गया, तो उसने कहा कि डेटा ट्रैफ़िक आकार के दृष्टिकोण से, यह उपयोगी हो सकता है, लेकिन अगर हमें इस डेटा में हेरफेर करने की आवश्यकता नहीं है। इस मामले में एप्लिकेशन कोड पर एक खुफिया जानकारी होनी चाहिए जो इस स्ट्रिंग को एक सूची में बदल सकती है (मान लीजिए कि इस तालिका तक पहुंचने वाले सॉफ़्टवेयर को कॉम्बो बॉक्स बनाने की आवश्यकता है)।
हमने निष्कर्ष निकाला कि यह मॉडल बहुत उपयोगी नहीं है, लेकिन मुझे संदेह है कि इस उपयोगी बनाने का कोई तरीका हो सकता है।
मैं पूछना चाहता हूं कि क्या आप में से किसी ने पहले से ही इस तरह से कुछ देखा, सुना या किया है जो वास्तव में काम करता है ।
a;b;c
है, तो अपने स्ट्रिंग आप पार्स प्राप्त करने के लिए सामने अंत का उपयोग a
, b
, c
, निष्पादन पर और कैरी उनके साथ कुछ कर रही हो सकता है ?. महसूस करें कि यह उस तरह की विशिष्ट आवश्यकता के अनुरूप हो सकता है ... दूसरे विचार पर, नहीं। आप हमेशा आईडी स्टोर कर सकते हैं, अपनी तालिकाओं में शामिल हो सकते हैं और एक