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 नहीं।
  • याद रखने का hook: एक व्यक्ति (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

Strong entity, weak entity · Data Processing and Analysis (DPA) · Gri-Learn