मैंने हाल ही में छोटी, प्रबंधनीय सारणी में एक बहुत बड़ी डेटाबेस तालिका तोड़ दी है और अधिकांश भाग के लिए मैं अपने काम से संतुष्ट हूं और मुझे लगता है कि डेटा ठीक से सामान्यीकृत है।डाटाबेस सामान्यीकरण
लेकिन इसमें एक अपवाद है। प्रश्न में तालिका एक उत्पाद डेटाबेस से हैं जो कंपनी द्वारा बेचे जाने वाले उत्पादों के बारे में जानकारी संग्रहीत करती है (आपने अनुमान लगाया है)। मैंने अधिकतर जानकारी को दो टेबलों में विभाजित किया है: ProductBase
और ProductBasePackaging
।
इन तालिकाओं में जानकारी की छतरी होती है जो किसी व्यक्तिगत उत्पाद की बजाय आधार भाग संख्या से प्रासंगिक होती है (प्रत्येक आधार संख्या के लिए कई उत्पाद होते हैं)।
ProductBase
बल्कि निर्माण अर्थात सामग्री पर सामान्य जानकारी के इस तरह के रूप MarketingCopy
, Keywords
आदि और भी जानकारी, घटक आदि
और ProductBasePackaging
निश्चित रूप से पैकेजिंग के बारे में डेटा को होल्ड शामिल हैं।
अब जब मैं डेटा मैनिपुलेशन के लिए आवेदन लिख रहा हूं, तो मुझे दूसरा अनुमान लगाना शुरू हो रहा है। ऐसा लगता है जैसे मैंने अभी अपने आप को कठिन बना दिया है कि मुझे एक ही कुंजी (आधार भाग संख्या) का उपयोग करने वाली कई तालिकाओं का ट्रैक रखना होगा। या क्या मैं उन्हें इस तरह से अलग करने का अधिकार रखता हूं और शायद इसे एक कदम आगे ले गया और निर्माण को अपनी खुद की मेज में भी अलग कर दिया?
मैं एसक्यूएल का उपयोग करने में बहुत अच्छी तरह से जानता हूं लेकिन यह पहली बार है कि मुझे वास्तव में डेटाबेस संरचना को डिजाइन करना पड़ा है, अकेले ही एक बड़े मौजूदा डेटाबेस को पुन: स्थापित करने दें। तो मूल रूप से मैं जो पूछ रहा हूं, क्या मेरे पास एक ही कुंजी के साथ कई टेबल हैं जो डेटा के प्रकार से अलग हो या एक ही टेबल में चीजें एक साथ रख सकें जहां मैं एक ही कुंजी का उपयोग करके एक टेबल से जो कुछ भी कर सकता हूं उसका संदर्भ दे सकता हूं?
क्षमा करें मुझे पता है कि पढ़ने के लिए बहुत कुछ था, मुझे उम्मीद है कि यह समझ में आया है, और उन सभी के लिए धन्यवाद जो इसे बनाते हैं!
+1 मैं ** विचार ** के बारे में सहमत हूं। ओपी को यह भी ध्यान में रखना चाहिए कि यदि आपने प्रभावी रूप से डी-डुप्लिकेट किया है तो 'जॉइन' टेबल से पूछताछ एक फ्लैट टेबल से बहुत तेज हो सकती है। – Matthew
+1। ऐसा लगता है जैसे ओ.पी. इसे सही के बारे में मिला है। उत्पाद व्यक्तिगत विजेट हैं, है ना? लेकिन वे बिक्री के लिए विभिन्न एसकेयू में बंडल हो जाते हैं। 2,4,8 के पैकेज, आदि। शायद वॉलमार्ट, आदि के लिए विशेष घर पैकेजिंग। आपको यहां कम से कम दो अलग-अलग इकाइयां मिली हैं। –
@ निकोलस हाँ आप सही है। लेकिन क्या आप संभवतः अपने उदाहरण में अलग-अलग इकाइयों पर विस्तार कर सकते हैं? – Nick