मैं एक school.Here में छात्रों के एक डेटाबेस क्या मैं अब तक राशि है बनाने हूँ: अद्वितीय होने के लिए एक समग्र कुंजी कैसे बनाएं?
आप "संक्षेप में" भाग
समस्या के लिए कूद पढ़ने पसंद नहीं है यह है कि मैं इस डिजाइन से खुश नहीं हूं। मैं अद्वितीय होने के लिए grade
, subgrade
और id_class
का संयोजन चाहता हूं और छात्रों की तालिका के लिए प्राथमिक कुंजी के रूप में कार्य करना चाहता हूं। मैं student_id
को हटा सकता हूं और 3 से एक समग्र कुंजी बना सकता हूं लेकिन मुझे वह नहीं चाहिए। हो सकता है कि मुझे एक और टेबल बनाना चाहिए combination_id
जहां grade
, subgrade
और id_class
विदेशी कुंजी हैं और एक अतिरिक्त कॉलम comb_id
है जो तालिका के लिए आईडी के रूप में कार्य करता है। और सभी कॉलम प्राथमिक कुंजी होंगे। लेकिन समस्या यह है कि उन 3 कॉलम अभी भी उस अतिरिक्त कॉलम (comb_id
) के कारण दोहरा सकते हैं। उदाहरण के लिए, मेरे पास grade
, subgrade
और class_id
लेकिन अलग-अलग comb_id
हो सकते हैं जो तालिका के 4 कॉलम (combination_id
) की समग्र कुंजी के कारण पंक्ति को वैध बनाएंगे।
संक्षेप में मैं students_id
चाहते तालिका के केवल प्राथमिक कुंजी रहने के लिए लेकिन एक और तालिका जो किसी भी तरह grades
, subgrade
और class_id
के अद्वितीय संयोजन है के लिए एक विदेशी कुंजी हो सकता है।
यदि मैं नीचे दी गई टिप्पणियों में पर्याप्त स्पष्ट नहीं था और अग्रिम धन्यवाद।
पुनश्च मैं indescriptive शीर्षक के लिए माफी चाहता हूँ, लेकिन मैं नामकरण
संपादित करें 1 पर बुरा कर रहा हूँ: subgrade
करने के लिए एक हो सकता है 1 करने के लिए किया जा सकता है: अधिक स्पष्ट रूप से कहें j id_class
30 करने के लिए 1 होना कर सकते हैं और यह वर्ग
में अपना नंबर है तो एक छात्र 7b वर्ग से हो सकता है और कर सकते हैं कक्षा में उसका नंबर - 5
मुझे समझ में नहीं आता है, क्या कक्षा में सभी छात्र अलग-अलग ग्रेड रखने के लिए तैयार हैं? – Jodrell
छात्र कक्षा में परिवर्तन करते समय क्या करेंगे या क्या ऐसा कभी नहीं होता? – Jodrell
'student_id' कॉलम में क्या गलत है? – Jodrell