কম্পিউটার টিউটোরিয়াল

DBMS-এ One-to-Many Unary Relationship (এক-से-অনেক ইউনারি রিলেশনশিপ)

One-to-Many Unary Relationship হলো একই এন্টিটি টাইপের মধ্যে ঘটা রিলেশনশিপ যেখানে একই ইনস্ট্যান্সগুলো ভিন্ন ভিন্ন রোল গ্রুপে অংশগ্রহণ করে।

উদাহরণ: Manager এবং Employee

DBMS-এ One-to-Many Unary Relationship (এক-से-অনেক ইউনারি রিলেশনশিপ)

  • দুই রোল: Manager এবং Employee।
  • কয়েকজন Employee Manager-এর রোল পালন করে।
  • প্রত্যেক Manager একাধিক Employee কে ম্যানেজ করে।
  • প্রত্যেক Manager নিজেও একটি Employee।

অপশন্যালিটি (Optionality) ভিত্তিক ভেরিয়েশন

১. One-to-Many Optional-Mandatory

DBMS-এ One-to-Many Unary Relationship (এক-से-অনেক ইউনারি রিলেশনশিপ)

  • এক রোল গ্রুপের প্রতিটি ইনস্ট্যান্স বাধ্যতামূলকভাবে অংশ নেবে (Mandatory)।
  • অন্য রোল গ্রুপের ইনস্ট্যান্স ঐচ্ছিকভাবে অংশ নিতে পারে (Optional)।
  • Manager রোল Optional (সব Employee Manager নয়)।
  • Employee রোল Mandatory হওয়া উচিত, কিন্তু টপ-লেভেল ম্যানেজারের কোনো Manager নেই → Rule violate হয়।

২. One-to-Many Optional-Optional

  • উভয় রোল গ্রুপের ইনস্ট্যান্স অংশ নিতে পারে বা নাও নিতে পারে।
  • Manager রোল Optional (কেউ Manager হতে পারে, কেউ নয়)।
  • সিনিয়র মোস্ট Employee-র কোনো Manager নেই → Optional, তাই Valid।
  • এটি বাস্তব জগতের সংগঠন কাঠামোর সাথে সবচেয়ে বেশি মেলে।

ER ডায়াগ্রাম নোটেশন

  • এন্টিটি বক্স: Employee
  • রিলেশনশিপ রোम्बাস: Manages (Unary/Recursive)
  • কার্ডিন্যালিটি: 1:M (One Manager : Many Employees)
  • অপশন্যালিটি: সলিড লাইন (Mandatory), ড্যাশড লাইন (Optional)

SQL ইমপ্লিমেন্টেশন

CREATE TABLE Employee (
  Emp_ID INT PRIMARY KEY,
  Emp_Name VARCHAR(100),
  Manager_ID INT,
  FOREIGN KEY (Manager_ID) REFERENCES Employee(Emp_ID)
    ON DELETE SET NULL
);
  • Manager_ID হলো ফরেন কী যা একই টেবিলের Emp_ID রেফার করে (Self-referencing FK)।
  • ON DELETE SET NULL ম্যানেজার ডিলিট হলে সাবঅর্ডিনেটের ম্যানেজার_আইডি NULL করে দেবে।
  1. DBMS-এ এক-से-বহু বা বহু-से-এক সম্পর্ক

  2. DBMS-এ ডেটা ডিকশনারি

  3. DBMS-এ ফাংশনাল নির্ভরতা

  4. ইউনারি বা রিকারসিভ সম্পর্ক (Unary or Recursive Relationship)