✏️ Explanatory Question

আইডেন্টিফাইং রিলেশনশিপ কখন ব্যবহার করি?

👁 1 Views
📘 Detailed Answer
🟢 Easy
💡

Answer with Explanation

  উত্তর: DBMS-এর ER Model-এ Identifying Relationship বা আইডেন্টিফাইং রিলেশনশিপ ব্যবহার করা হয় তখন, যখন কোনো Weak Entity-কে তার নিজের attribute দ্বারা uniquely identify করা যায় না এবং তাকে identify করার জন্য একটি Strong Entity-এর primary key-এর সাহায্য দরকার হয়।

অর্থাৎ, যখন কোনো entity নিজের পরিচয়ের জন্য অন্য একটি entity-এর উপর নির্ভরশীল থাকে, তখন সেই weak entity এবং strong entity-এর মধ্যে যে relationship তৈরি হয়, তাকে Identifying Relationship বলা হয়।

  সহজ ভাষায়: যখন কোনো দুর্বল entity বা Weak Entity-কে চিনতে হলে strong entity-এর সাহায্য নিতে হয়, তখন আমরা Identifying Relationship ব্যবহার করি।


  পরীক্ষার জন্য সংক্ষিপ্ত উত্তর

Identifying Relationship হলো Strong Entity এবং Weak Entity-এর মধ্যে এমন একটি relationship, যার মাধ্যমে Weak Entity-কে uniquely identify করা হয়। যখন কোনো Weak Entity-এর নিজস্ব Primary Key থাকে না এবং তাকে Strong Entity-এর Primary Key ও নিজের Partial Key-এর সাহায্যে শনাক্ত করতে হয়, তখন Identifying Relationship ব্যবহার করা হয়। ER Diagram-এ Identifying Relationship-কে সাধারণত double diamond দ্বারা প্রকাশ করা হয়।


  কখন Identifying Relationship ব্যবহার করি?

নিচের অবস্থাগুলো দেখা গেলে Identifying Relationship ব্যবহার করা হয়:

  •   যখন কোনো entity-এর নিজস্ব সম্পূর্ণ Primary Key থাকে না।
  •   যখন কোনো entity-কে uniquely identify করার জন্য অন্য entity-এর Primary Key দরকার হয়।
  •   যখন Weak Entity নিজের অস্তিত্বের জন্য Strong Entity-এর উপর নির্ভরশীল থাকে।
  •   যখন Weak Entity-এর Partial Key এবং Strong Entity-এর Primary Key মিলিয়ে একটি composite key তৈরি হয়।
  •   যখন ER Diagram-এ Strong Entity এবং Weak Entity-এর dependency দেখাতে হয়।

  উদাহরণ ১: Employee এবং Dependent

ধরা যাক, একটি কোম্পানির database-এ Employee এবং Dependent নামে দুটি entity আছে।

  •   Employee: Employee_ID, Name, Department
  •   Dependent: Dependent_Name, Age, Relation

এখানে Employee হলো Strong Entity, কারণ Employee_ID দ্বারা প্রত্যেক employee-কে আলাদাভাবে identify করা যায়।

কিন্তু Dependent entity-এর নিজস্ব Primary Key নেই। একই নামে একাধিক dependent থাকতে পারে। তাই Dependent-কে identify করার জন্য Employee_ID-এর সাহায্য দরকার হয়।

  সুতরাং, Employee এবং Dependent-এর মধ্যে যে relationship তৈরি হয়, সেটি হলো Identifying Relationship


  টেবিলের মাধ্যমে বোঝা যাক

Employee_ID Employee_Name Dependent_Name Relation
101 Rahul Amit Son
102 Sima Amit Brother

উপরের table-এ দেখা যাচ্ছে, Amit নামটি দুইবার আছে। শুধু Dependent_Name দেখে বোঝা যাচ্ছে না কোন Amit কার dependent। কিন্তু Employee_ID-এর সাথে Dependent_Name মিলিয়ে দেখলে dependent-কে আলাদাভাবে identify করা যায়।

তাই এখানে Dependent entity-কে identify করার জন্য Employee entity-এর Primary Key দরকার হচ্ছে। এই কারণেই Employee এবং Dependent-এর মধ্যে Identifying Relationship ব্যবহার করা হয়।


  উদাহরণ ২: Order এবং Order_Item

ধরা যাক, একটি online shopping database-এ Order এবং Order_Item entity আছে।

  •   Order: Order_ID, Order_Date, Customer_Name
  •   Order_Item: Item_No, Product_Name, Quantity

এখানে Order হলো Strong Entity, কারণ Order_ID দ্বারা order uniquely identify করা যায়।

কিন্তু Order_Item entity নিজে একা uniquely identify হতে পারে না। কারণ Item_No একইভাবে একাধিক order-এ থাকতে পারে।

যেমন:

  •   Order 1001-এর Item_No 1
  •   Order 1002-এর Item_No 1

এখানে শুধু Item_No 1 দেখলে বোঝা যাবে না কোন order-এর item বোঝানো হচ্ছে। তাই Order_ID + Item_No একসাথে ব্যবহার করতে হয়।

  এই ক্ষেত্রে Order এবং Order_Item-এর relationship হলো Identifying Relationship।


  উদাহরণ ৩: Hotel এবং Room

ধরা যাক, একটি hotel management database-এ Hotel এবং Room entity আছে।

  •   Hotel: Hotel_ID, Hotel_Name, Location
  •   Room: Room_No, Room_Type, Rent

Room_No একা সব সময় unique নাও হতে পারে, কারণ অনেক hotel-এ Room No 101 থাকতে পারে। তাই Room identify করার জন্য Hotel_ID এবং Room_No একসাথে ব্যবহার করা দরকার।

এই কারণে Room entity Hotel entity-এর উপর নির্ভরশীল। তাই Hotel এবং Room-এর মধ্যে Identifying Relationship ব্যবহার করা যায়।


  Identifying Relationship-এ Key কীভাবে কাজ করে?

Identifying Relationship-এ সাধারণত Strong Entity-এর Primary Key এবং Weak Entity-এর Partial Key একসাথে মিলে Weak Entity-কে uniquely identify করে।

উপাদান অর্থ উদাহরণ
Strong Entity যার নিজস্ব Primary Key আছে Employee
Primary Key Strong Entity-কে identify করে Employee_ID
Weak Entity যার নিজস্ব Primary Key নেই Dependent
Partial Key Weak Entity-কে আংশিকভাবে identify করে Dependent_Name
Composite Key Primary Key + Partial Key Employee_ID + Dependent_Name

  ER Diagram-এ Identifying Relationship-এর চিহ্ন

উপাদান ER Diagram Symbol ব্যাখ্যা
Strong Entity Single Rectangle নিজস্ব Primary Key থাকে
Weak Entity Double Rectangle নিজে নিজে uniquely identify হতে পারে না
Identifying Relationship Double Diamond Strong Entity ও Weak Entity-কে যুক্ত করে
Partial Key Dashed Underline Weak Entity-এর আংশিক key
Total Participation Double Line Weak Entity অবশ্যই Strong Entity-এর সাথে যুক্ত থাকবে

  Identifying এবং Non-Identifying Relationship-এর পার্থক্য

বিষয় Identifying Relationship Non-Identifying Relationship
ব্যবহার Weak Entity identify করতে ব্যবহৃত হয় দুটি entity-এর সাধারণ সম্পর্ক দেখাতে ব্যবহৃত হয়
Dependency Weak Entity Strong Entity-এর উপর নির্ভরশীল Child entity সাধারণত নিজের key দিয়ে identify হতে পারে
Primary Key Strong Entity-এর Primary Key Weak Entity-এর key-এর অংশ হয় Parent key child-এর primary key-এর অংশ নাও হতে পারে
ER Symbol Double Diamond Single Diamond
উদাহরণ Employee — Dependent Student — Department

  কখন Identifying Relationship ব্যবহার করব না?

Identifying Relationship সব relationship-এর ক্ষেত্রে ব্যবহার করা হয় না। নিচের অবস্থায় এটি ব্যবহার করা উচিত নয়:

  •   যদি child entity-এর নিজস্ব Primary Key থাকে।
  •   যদি child entity parent entity ছাড়াও independently exist করতে পারে।
  •   যদি relationship শুধু সাধারণ association বোঝায়, identification-এর জন্য দরকার না হয়।
  •   যদি parent entity-এর Primary Key child entity-এর Primary Key-এর অংশ না হয়।

  উদাহরণ: Student এবং Department-এর মধ্যে relationship থাকতে পারে। একজন student কোনো department-এ পড়ে। কিন্তু Student entity-এর নিজের Roll Number বা Student_ID থাকলে তাকে identify করার জন্য Department_ID দরকার হয় না। তাই এটি সাধারণত Non-Identifying Relationship।


  শ্রেণিকক্ষে বোঝানোর সহজ পদ্ধতি

শিক্ষক ছাত্রদের এভাবে বোঝাতে পারেন:

ধরা যাক, একটি স্কুলে ছাত্রদের তথ্য রাখা হচ্ছে। Student entity-এর Roll Number আছে, তাই ছাত্রকে সহজে identify করা যায়। কিন্তু যদি Student-এর Guardian information রাখা হয়, তাহলে শুধু Guardian_Name দেখে বোঝা যাবে না তিনি কোন student-এর guardian। একই নামের guardian অনেক student-এর থাকতে পারে।

তাই Guardian information identify করতে Student-এর Roll Number দরকার হতে পারে। এই ক্ষেত্রে Student হলো Strong Entity এবং Guardian information Weak Entity-এর মতো কাজ করতে পারে। এই দুটির মধ্যে যে relationship Weak Entity-কে identify করতে সাহায্য করে, সেটিই Identifying Relationship।


  পরীক্ষায় লেখার নিয়ম

  প্রথমে Identifying Relationship-এর সংজ্ঞা লিখবে।
  তারপর লিখবে এটি Strong Entity এবং Weak Entity-এর মধ্যে ব্যবহৃত হয়।
  উল্লেখ করবে যে Weak Entity-এর নিজস্ব Primary Key থাকে না।
  লিখবে যে Strong Entity-এর Primary Key এবং Weak Entity-এর Partial Key একসাথে ব্যবহার হয়।
  ER Diagram-এ double diamond দ্বারা প্রকাশ করা হয়—এ কথা লিখবে।
  শেষে Employee-Dependent বা Order-Order_Item উদাহরণ দিলে উত্তরটি সম্পূর্ণ হবে।


  মনে রাখার সহজ সূত্র

  Weak Entity-কে identify করতে Strong Entity-এর key দরকার হলে Identifying Relationship ব্যবহার করা হয়।


  চূড়ান্ত পরীক্ষামূলক উত্তর

DBMS-এর ER Model-এ Identifying Relationship ব্যবহার করা হয় তখন, যখন কোনো Weak Entity-কে তার নিজের attribute দ্বারা uniquely identify করা যায় না এবং তাকে identify করার জন্য Strong Entity-এর Primary Key-এর সাহায্য দরকার হয়। Weak Entity-এর নিজস্ব সম্পূর্ণ Primary Key থাকে না; তাই Strong Entity-এর Primary Key এবং Weak Entity-এর Partial Key একসাথে ব্যবহার করে Weak Entity-কে শনাক্ত করা হয়। ER Diagram-এ Identifying Relationship সাধারণত double diamond দ্বারা দেখানো হয়। উদাহরণস্বরূপ, Employee এবং Dependent-এর ক্ষেত্রে Dependent entity employee-এর উপর নির্ভরশীল। তাই Employee এবং Dependent-এর মধ্যে relationship হলো Identifying Relationship।