डेटाबेस मॉडल
आपको मूल रूप से एक many-to-many
. की आवश्यकता होती है लेखकों और प्रकाशनों के बीच संबंध, क्योंकि एक लेखक कई प्रकाशन लिख सकता है, और एक प्रकाशन एक से अधिक लेखक द्वारा लिखा जा सकता है।
इसके लिए आपके पास 3 टेबल होनी चाहिए।
- लेखक - प्रत्येक लेखक के बारे में सामान्य जानकारी (प्रकाशन_आईडी के बिना)
- प्रकाशन - प्रत्येक प्रकाशन के बारे में सामान्य जानकारी (author_id के बिना)
- AuthorPublication - कॉलम
author_id
औरpublication_id
जो तालिकाओं के संदर्भ हैंAuthor
औरPublication
।
इस तरह आप किसी विशिष्ट लेखक को प्रकाशन के लिए बाध्य नहीं कर रहे हैं, लेकिन आपके पास उनमें से अधिक हो सकते हैं, और वही चीज़ दूसरी तरफ हो सकती है।
अतिरिक्त नोट
यदि आप किसी विशेष प्रकाशन में लेखकों की भूमिका में अंतर करना चाहते हैं तो आप id_role
जैसे कुछ कॉलम भी जोड़ सकते हैं। यह एक लेखक के लिए सभी संभावित भूमिकाओं को बताते हुए एक शब्दकोश तालिका का संदर्भ होगा। इस तरह आप प्रमुख लेखकों, सह-लेखकों आदि के बीच अंतर कर सकते हैं। इस तरह आप पुस्तक के अनुवाद को संभालने वाले लोगों के बारे में जानकारी भी संग्रहीत कर सकते हैं, लेकिन शायद आपको Author
का नामकरण बदलना चाहिए। कुछ कम विशिष्ट के लिए।
उपस्थिति का क्रम
आप AuthorPublication
. में एक कॉलम जोड़कर अपने लेखकों का उचित क्रम सुनिश्चित कर सकते हैं जिसे आप प्रत्येक Publication
. के लिए अलग से बढ़ाएंगे . इस तरह आप अपनी आवश्यकता के अनुसार ऑर्डरिंग को सुरक्षित रख पाएंगे।