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

RDBMS-এ রেফারেনশিয়াল ইন্টিগ্রিটি রুল (Referential Integrity Rule)

রেফারেনশিয়াল ইন্টিগ্রিটি রুল (Referential Integrity Rule) হলো প্রাইমারি কী এবং ফরেন কীর উপর ভিত্তি করে একটি নিয়ম যা নিশ্চিত করে: এক টেবিলের ফরেন কীর মান অবশ্যই অন্য টেবিলের প্রাইমারি কীর সাথে মিলে থাকতে হবে (অথবা NULL হতে পারে)।

নियम

  1. ফরেন কীর প্রতিটি নন-নাল মান অবশ্যই রেফারেন্সড টেবিলের প্রাইমারি কীতে বিদ্যমান থাকতে হবে।
  2. রেফারেন্সড রো ডিলিট/আপডেট করলে সংশ্লিষ্ট ফরেন কী রোও ডিলিট/আপডেট/সেট নাল করা উচিত (CASCADE/SET NULL/RESTRICT)।
  3. প্রাইমারি কী এবং ফরেন কীর ডেটা টাইপ একই হতে হবে যাতে জয়েন করা যায়।

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

Employee টেবিল (Child)

EMP_ID (PK) EMP_NAME DEPT_ID (FK)
101 John D01
102 Jane D02

Department টেবিল (Parent)

DEPT_ID (PK) DEPT_NAME DEPT_ZONE
D01 IT Zone A
D02 HR Zone B

এখানে Employee-র DEPT_ID হলো ফরেন কী যা Department-র DEPT_ID (প্রাইমারি কী) রেফার করে। Employee-র DEPT_ID এর মান অবশ্যই D01 বা D02 হতে হবে (বা NULL, যদি অ্যালো করা থাকে)।

ডায়াগ্রাম

RDBMS-এ রেফারেনশিয়াল ইন্টিগ্রিটি রুল (Referential Integrity Rule)

SQL কনস্ট্রেইন্ট

CREATE TABLE Department (
  DEPT_ID VARCHAR(10) PRIMARY KEY,
  DEPT_NAME VARCHAR(50),
  DEPT_ZONE VARCHAR(50)
);

CREATE TABLE Employee (
  EMP_ID INT PRIMARY KEY,
  EMP_NAME VARCHAR(100),
  DEPT_ID VARCHAR(10),
  FOREIGN KEY (DEPT_ID) REFERENCES Department(DEPT_ID)
    ON DELETE SET NULL
    ON UPDATE CASCADE
);

রেফারেনশিয়াল অ্যাকশন (ON DELETE / ON UPDATE)

অ্যাকশন বিবরণ
CASCADE প্যারেন্ট ডিলিট/আপডেট হলে চাইল্ডও ডিলিট/আপডেট হয়।
SET NULL প্যারেন্ট ডিলিট/আপডেট হলে চাইল্ডের FK NULL হয় (FK নালেবল থাকতে হবে)।
RESTRICT / NO ACTION প্যারেন্ট ডিলিট/আপডেট ব্লক করবে যদি চাইল্ড এক্সিস্ট করে (ডিফল্ট)।
SET DEFAULT চাইল্ডের FK ডিফল্ট ভ্যালুতে সেট হয়।

মহত্ব

  • অনাথ (Orphan) রেকর্ড প্রতিরোধ করে।
  • ডেটা কনসিস্টেন্সি নিশ্চিত করে।
  • ডাটাবেস লেভেলে এনফোর্স করা হয় (অ্যাপলিকেশন লেভেলে বাগ থাকলে ও সেফ)۔
  1. RDBMS-এর ভবিষ্যৎ (Future of RDBMS)

  2. RDBMS টার্মিনোলজি (Database, Table, Column, Row, Keys)

  3. RDBMS-এ ফরেন কী (Foreign Key) কী এবং কীভাবে কাজ করে

  4. E.F. Codd-এর ১২টি নিয়ম RDBMS-এর জন্য