ડેટાબેઝ ડિઝાઇનમાં બહુવિવિધ નિર્ભરતા

બહુવિવિધ નિર્ભરતા ચોથા સામાન્ય સ્વરૂપ તોડે છે

એક રીલેશ્નલ ડેટાબેસમાં, નિર્ભરતા ત્યારે થાય છે જ્યારે ડેટાબેઝ કોષ્ટકમાં સંગ્રહિત માહિતી સમાન ટેબલમાં સંગ્રહિત અન્ય માહિતી નક્કી કરે છે. મલ્ટિલાયલ્ડ ડિપેન્ડન્સી ત્યારે થાય છે જ્યારે કોષ્ટકમાં એક અથવા વધુ હરોળની હાજરી તે જ કોષ્ટકમાં એક અથવા વધુ પંક્તિઓની હાજરી સૂચવે છે. બીજી રીતે મૂકો, કોષ્ટકમાં બે એટ્રીબ્યુટો (અથવા કૉલમ) એકબીજાથી સ્વતંત્ર છે, પરંતુ બન્ને ત્રીજા લક્ષણ પર આધાર રાખે છે.

એક બહુવિવિધ નિર્ભરતા નોર્મલાઇઝેશન સ્ટાન્ડર્ડ ચોથા સામાન્ય સ્વરૂપ (4 એનએફ) ને અટકાવે છે. રીલેશનલ ડેટાબેઝો પાંચ સામાન્ય સ્વરૂપોનું પાલન કરે છે જે રેકોર્ડ ડિઝાઇન માટે દિશાનિર્દેશોનું પ્રતિનિધિત્વ કરે છે. તેઓ ડેટાની અસંગતતા અને અસાતત્યતાને અપડેટ કરતા અટકાવે છે. ચોથા સામાન્ય સ્વરૂપ ડેટાબેઝમાં ઘણા-થી-એક સંબંધો સાથે વ્યવહાર કરે છે.

કાર્યાત્મક નિર્ભરતા વિરુદ્ધ બહુવિવિધ નિર્ભરતા

એક બહુવિવિધ નિર્ભરતાને સમજવા માટે, પુનરાવર્તન કરવું ઉપયોગી છે કે કાર્યલક્ષી નિર્ભરતા શું છે.

જો કોઈ એક્સટેંટીવ એક્સ વિશિષ્ટ રૂપે એક લક્ષણ નક્કી કરે છે, તો Y એ વિધેયાત્મક રીતે એક્સ પર આધાર રાખે છે. આ X -> વાય તરીકે લખાયેલ છે. ઉદાહરણ તરીકે, નીચેના વિદ્યાર્થી ટેબલમાં Student_Name મુખ્ય નિર્ધારિત કરે છે:

વિદ્યાર્થીઓ
વિદ્યાર્થીનું નામ મુખ્ય
રવિ કલા ઇતિહાસ
બેથ રસાયણશાસ્ત્ર


આ વિધેયાત્મક નિર્ભરતા લખી શકાય છે: Student_Name -> મેજર દરેક Student_Name બરાબર એક મુખ્ય, અને વધુ નહીં નક્કી કરે છે.

જો તમે ઇચ્છતા હોવ કે ડેટાબેઝ રમતોને ટ્રૅક કરવા માટે આ વિદ્યાર્થીઓ લે છે, તો તમને લાગે છે કે આ કરવા માટે સૌથી સહેલો રસ્તો એ છે કે સ્પોર્ટ:

વિદ્યાર્થીઓ
વિદ્યાર્થીનું નામ મુખ્ય સ્પોર્ટ
રવિ કલા ઇતિહાસ સોકર
રવિ કલા ઇતિહાસ વૉલીબોલ
રવિ કલા ઇતિહાસ ટૅનિસ
બેથ રસાયણશાસ્ત્ર ટૅનિસ
બેથ રસાયણશાસ્ત્ર સોકર


અહીં સમસ્યા એ છે કે રવિ અને બેથ બંને બહુવિધ રમતો રમે છે. દરેક વધારાના રમત માટે નવી પંક્તિ ઉમેરવી જરૂરી છે.

આ કોષ્ટકમાં બહુભાષી નિર્ભરતા રજૂ કરવામાં આવી છે કારણ કે મોટા અને રમત એકબીજાથી સ્વતંત્ર છે પરંતુ બન્ને વિદ્યાર્થી પર આધાર રાખે છે.

આ એક સરળ ઉદાહરણ છે અને સહેલાઇથી ઓળખી શકાય છે, પરંતુ બહુપક્ષીય નિર્ભરતા મોટી, સંકુલ ડેટાબેઝમાં સમસ્યા બની શકે છે.

એક બહુવિવિધ નિર્ભરતા X -> -> Y. લખાય છે: આ કિસ્સામાં:

Student_Name -> -> મેજર
Student_Name -> -> રમતગમત

આ "Student_Name મલ્ટિડેટમેઇન્સ મેજર" અને "Student_Name મલ્ટિડેટમેઇન્સ સ્પોર્ટ" તરીકે વાંચે છે.

એક બહુપરીમાણીય નિર્ભરતાને ઓછામાં ઓછા ત્રણ લક્ષણોની જરૂર છે કારણ કે તેમાં ઓછામાં ઓછા બે લક્ષણો છે જે ત્રીજા પર આધાર રાખે છે.

બહુવિવિધ નિર્ભરતા અને સામાન્યકરણ

એક બહુવિવિધ નિર્ભરતા સાથેનો ટેબલ ફોર્થ નોર્મલ ફોર્મ (4 એનકે) ના સામાન્યકરણના ધોરણનું ઉલ્લંઘન કરે છે કારણ કે તે બિનજરૂરી બિનજરૂરી કર્મચારીઓ બનાવે છે અને અસંગત માહિતીમાં યોગદાન આપી શકે છે. આને 4 એનએફ સુધી લાવવા માટે, આ માહિતીને બે કોષ્ટકોમાં તોડવા માટે જરૂરી છે.

નીચે આપેલ કોષ્ટકમાં હવે Student_Name -> મેજર, અને કોઈ મલ્ટિવાલાયડ ડિપેન્ડન્સીની કાર્યલક્ષી નિર્ભરતા નથી:

વિદ્યાર્થીઓ અને મહત્ત્વની રમતો
વિદ્યાર્થીનું નામ મુખ્ય
રવિ કલા ઇતિહાસ
રવિ કલા ઇતિહાસ
રવિ કલા ઇતિહાસ
બેથ રસાયણશાસ્ત્ર
બેથ રસાયણશાસ્ત્ર

જ્યારે આ કોષ્ટકમાં Student_Name ના એક જ વિધેયાત્મક નિર્ભરતા પણ હોય છે -> રમતગમત:

વિદ્યાર્થીઓ અને રમતો
વિદ્યાર્થીનું નામ સ્પોર્ટ
રવિ સોકર
રવિ વૉલીબોલ
રવિ ટૅનિસ
બેથ ટૅનિસ
બેથ સોકર

તે સ્પષ્ટ છે કે સામાન્યીકરણને ઘણી વાર જટિલ કોષ્ટકો સરળ કરીને સંબોધવામાં આવે છે જેથી તેઓ એક જ ટેબલ બનાવવાના પ્રયાસ કરતા એક જ વિચાર અથવા થીમથી સંબંધિત માહિતી ધરાવતી હોય, જેમાં ખૂબ જ અસમાન માહિતી હોય છે