Strong entity, weak entity

એક strong entity પોતાના દમ પર પોતાની key સાથે ઊભી રહે છે (Customer), જ્યારે એક weak entity એક parent વગર ન તો મોજૂદ રહી શકે ન ઓળખાઈ શકે (એક Order Item એના Order વગર કોઈ અર્થ રાખતું નથી) અને અલગ ઓળખાવા parent ની key પર નિર્ભર હોય છે.

9 min read · 8 cards · 2 checks

Read in: English · हिन्दी · ગુજરાતી


Theory

જે line item ની પોતાની કોઈ જિંદગી નથી

Meera ના design માં, એક Customer સ્પષ્ટ રીતે એકલો ઊભો રહે છે: એને એક customer number આપો અને એ મોજૂદ થઈ જાય છે, બસ.

પણ એક order પર એક એકલી line વિચારો, '2 kg ખાંડ'. શું 'line 1' પોતાનામાં કંઈ અર્થ રાખે છે? ના, કયા order ની line 1? એ પોતાના parent order વગર ન તો મોજૂદ રહી શકે, ન ઓળખાઈ શકે.

કેટલીક entities આત્મનિર્ભર છે; કેટલીક સંપૂર્ણપણે નિર્ભર. Databases એને strong સામે weak entities કહે છે, અને એ બદલી નાખે છે કે તમે એમને કેવી રીતે ઓળખો છો. Meera ના orders તમને બરાબર બતાવશે કે કેમ.

Theory

એક વ્યક્તિ સામે એક hotel room number

એક વ્યક્તિ ની પોતાની એક ઓળખ હોય છે, એક Aadhaar number એમને ગમે ત્યાં ઓળખે છે (strong entity). પણ 'Room 101'? કયા hotel નો Room 101? Room number ફક્ત એક ખાસ hotel ની અંદર કંઈ અર્થ રાખે છે; પોતાનામાં એ અસ્પષ્ટ છે (weak entity). Room ને ઓળખવા તમને hotel + room number સાથે જોઈએ. Weak વસ્તુઓ unique થવા પોતાના parent ની ઓળખ ઉધાર લે છે.

Theory

બંને, બરાબર

  • Strong entity: સ્વતંત્ર રીતે મોજૂદ હોય છે અને એની પોતાની key હોય છે (એક primary key attribute). Customer, Item, Order. એક single rectangle તરીકે દોરેલી.
  • Weak entity: પોતાની જાતે ન તો મોજૂદ રહી શકે ન ઓળખાઈ શકે; એ એક parent (owner) entity પર નિર્ભર હોય છે. એની પાસે ફક્ત એક partial key (એક discriminator) હોય છે જે પોતાના parent ની અંદર unique હોય છે. એની પૂરી ઓળખ = parent ની key + એની પોતાની partial key. એક double rectangle તરીકે દોરેલી, એક double-diamond identifying relationship થી જોડાયેલી.

એક Order Item weak છે: એને મોજૂદ રહેવા પોતાનું Order જોઈએ, અને 'line 1' ફક્ત એ એક order ની અંદર unique છે.

Quiz

એક 'Order Line Item' ને WEAK entity કેમ ગણવામાં આવે છે?

  1. એ પોતાના parent Order વગર ન તો મોજૂદ રહી શકે ન uniquely ઓળખાઈ શકે
  2. એના strong હોવા માટે બહુ ઓછા attributes છે
  3. એ એક નાના table માં store થાય છે
  4. એના કોઈ relationships જ નથી
Show the answer

એ પોતાના parent Order વગર ન તો મોજૂદ રહી શકે ન uniquely ઓળખાઈ શકે

એક weak entity એક parent પર existence-dependent હોય છે: એક order line નો પોતાના order વગર કોઈ અર્થ નથી, અને 'line 1' ફક્ત એક આપેલા order ની અંદર unique છે, તો એના પોતાના attributes એને એકલા ઓળખી શકતા નથી. એ unique થવા Order ની key ઉધાર લે છે. નબળાઈ એ ઓળખની નિર્ભરતા વિશે છે, size કે attribute ની ગણતરી નહીં, જે બરાબર એ ગેરસમજ છે જે ખોટા options રાખે છે.

Think first

એક weak entity ને તમે કેવી રીતે ઓળખો છો?

બે અલગ orders માંથી દરેકની એક 'line 1' છે. જો એક weak Order-Item ની partial key ફક્ત line number છે, તો database બંને 'line 1' ને અલગ કેવી રીતે બતાવે છે? એ કઈ પૂરી ઓળખ વાપરે છે?

Show the answer

એ parent Order ની key + partial key ને જોડે છે: 'Order 5001, line 1' સામે 'Order 5002, line 1', હવે unique. એકલો line number (partial key / discriminator) orders માં દોહરાય છે, તો એ ફક્ત એક order ની અંદર unique છે. એક weak entity ની પૂરી ઓળખ હંમેશા owner key + discriminator હોય છે, બરાબર જેમ hotel + room number એક room ને ઓળખે છે.

Watch out

Marks ક્યાં કપાય છે

એમ વિચારવું કે 'weak' નો અર્થ 'નાનું' કે 'બિનમહત્વનું' છે, એનો અર્થ એક parent પર existence-અને-identity નિર્ભર છે. partial key ભૂલવી (ફક્ત parent ની અંદર unique) અને એ કે પૂરી ઓળખને parent key + partial key જોઈએ. અને diagram symbols: strong = single rectangle, weak = double rectangle એક double-diamond identifying relationship સાથે. Exams સાચા symbols અને parent-key ઓળખ નિયમ ના marks આપે છે.

Theory

એટલે જ આગળ keys મહત્વની છે

વિષય પર ધ્યાન આપો: વસ્તુઓને uniquely ઓળખવી એ databases નું ધબકતું હૃદય છે, એક customer number, એક order number, એક parent key વત્તા એક partial key. આગળનો lesson 'ઓળખ' ને keys ના આખા પરિવાર સાથે ચોક્કસ બનાવે છે: super, candidate, primary, composite, foreign, unique. Weak entities એ તમારો પહેલો સંકેત છે કે સાચી key પસંદ કરવી એ કેન્દ્રીય design કૌશલ્ય છે. આગળ: attribute types, પછી keys પોતે.

Summary

Key takeaways

  • એક strong entity સ્વતંત્ર રીતે મોજૂદ હોય છે અને એની પોતાની key હોય છે (Customer, Item); single rectangle.
  • એક weak entity એક parent વગર ન તો મોજૂદ રહી શકે ન ઓળખાઈ શકે (Order Item ને પોતાનું Order જોઈએ); double rectangle.
  • એક weak entity ની પાસે ફક્ત એક partial key (discriminator) હોય છે, પોતાના parent ની અંદર unique.
  • એની પૂરી ઓળખ = parent ની key + partial key.
  • નબળાઈ એ ઓળખની નિર્ભરતા વિશે છે, size નહીં.
  • યાદ રાખવાની યુક્તિ: એક વ્યક્તિ (strong) સામે hotel Room 101 (weak, hotel પણ જોઈએ).

Study this properly

This page is the lesson to read. In Gri-Learn the same topic is a graded deck: the self-checks are scored and your weak topics are tracked. Free to start.

Start this topic

Already have an account? Sign in

More from Concepts of Database

Gri-Learn · syllabus-mapped B.C.A. lessons in English, Hindi and Gujarati