✏️ Explanatory Question

এন্টিটি ইন্টিগ্রিটি কনস্ট্রেন্টস কখন ঘটে? ( Entity Integrity Constraint)

👁 7 Views
📘 Detailed Answer
🟢 Easy
💡

Answer with Explanation

  উত্তর: DBMS বা Database Management System-এর Relational Model-এ Entity Integrity Constraint হলো এমন একটি নিয়ম, যা নিশ্চিত করে যে একটি table-এর প্রতিটি row বা tuple-কে primary key-এর সাহায্যে আলাদাভাবে চিহ্নিত করা যাবে।

Entity Integrity Constraint মূলত primary key-এর উপর প্রযোজ্য হয়। এই constraint অনুযায়ী, কোনো table-এর Primary Key কখনো NULL হতে পারবে না এবং একই primary key value একাধিক row-তে থাকতে পারবে না।

  সহজ ভাষায়: যখন কোনো table-এর প্রতিটি record-কে আলাদাভাবে চিনতে primary key ব্যবহার করা হয়, তখন Entity Integrity Constraint প্রযোজ্য হয়। আর primary key যদি NULL বা duplicate হয়, তাহলে Entity Integrity Constraint violation ঘটে।


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

Entity Integrity Constraint তখন প্রযোজ্য হয়, যখন একটি relational table-এর প্রতিটি tuple বা row-কে uniquely identify করার জন্য primary key ব্যবহার করা হয়। এই constraint অনুযায়ী, primary key-এর value কখনো NULL হতে পারে না এবং duplicate হতে পারে না। যদি কোনো row-তে primary key NULL থাকে বা একই primary key value একাধিক row-তে থাকে, তাহলে Entity Integrity Constraint violation ঘটে।


  Entity Integrity Constraint কখন ঘটে বা প্রযোজ্য হয়?

Entity Integrity Constraint নিচের অবস্থায় প্রযোজ্য হয়:

  •   যখন কোনো table-এ primary key নির্ধারণ করা হয়।
  •   যখন table-এর প্রতিটি row বা record-কে uniquely identify করতে হয়।
  •   যখন primary key value NULL হওয়া আটকাতে হয়।
  •   যখন duplicate primary key value হওয়া আটকাতে হয়।
  •   যখন database-এর data accuracy এবং consistency বজায় রাখতে হয়।

  Entity Integrity Constraint violation কখন ঘটে?

Entity Integrity Constraint violation ঘটে মূলত দুইটি ক্ষেত্রে:

  1. Primary Key NULL হলে
  2. Primary Key duplicate হলে

কারণ primary key-এর কাজ হলো প্রতিটি row-কে আলাদাভাবে শনাক্ত করা। যদি primary key NULL হয়, তাহলে row-টি identify করা যাবে না। আবার যদি duplicate হয়, তাহলে দুটি row-এর মধ্যে পার্থক্য করা কঠিন হয়ে যাবে।


  উদাহরণ: Student Table

ধরা যাক, একটি Student table আছে:

Roll Name Class Marks
1 Rahul 10 85
2 Sima 10 90
3 Amit 10 78

এখানে Roll হলো Primary Key, কারণ Roll number দিয়ে প্রত্যেক student-কে uniquely identify করা যায়।

  Valid Table: উপরের table valid, কারণ প্রতিটি Roll value unique এবং কোনো Roll value NULL নয়।


  Case 1: Primary Key NULL হলে

নিচের table-টি বিবেচনা করো:

Roll Name Class Marks
1 Rahul 10 85
NULL Sima 10 90

এখানে second row-তে Roll value NULL। যেহেতু Roll primary key, তাই এটি NULL হতে পারে না।

  ব্যাখ্যা: Roll NULL হলে Sima-র record-কে uniquely identify করা যাবে না। তাই এখানে Entity Integrity Constraint violation ঘটেছে।


  Case 2: Primary Key duplicate হলে

নিচের table-টি দেখো:

Roll Name Class Marks
1 Rahul 10 85
1 Sima 10 90

এখানে Rahul এবং Sima—দুজনের Roll একই, অর্থাৎ Roll value duplicate হয়েছে।

  ব্যাখ্যা: যেহেতু Roll primary key, তাই একই Roll value দুইটি row-তে থাকতে পারে না। তাই এখানে Entity Integrity Constraint violation ঘটেছে।


  Primary Key এবং Entity Integrity-এর সম্পর্ক

Entity Integrity Constraint primary key-এর সাথে সরাসরি সম্পর্কিত। Primary key-এর দুটি গুরুত্বপূর্ণ নিয়ম আছে:

  •   Primary key value অবশ্যই unique হতে হবে।
  •   Primary key value কখনো NULL হতে পারবে না।

এই দুইটি নিয়ম বজায় রাখার মাধ্যমেই Entity Integrity নিশ্চিত করা হয়।


  SQL Example

Student table তৈরি করার সময় Roll-কে Primary Key হিসেবে define করা হলো:

CREATE TABLE Student (
    Roll INT PRIMARY KEY,
    Name VARCHAR(50),
    Class INT,
    Marks INT
);

  ব্যাখ্যা: এখানে Roll primary key হওয়ায় Roll column-এ NULL value দেওয়া যাবে না এবং একই Roll value একাধিকবার insert করা যাবে না।


  Valid এবং Invalid Data

Data Valid / Invalid কারণ
Roll = 1, Name = Rahul Valid Roll unique এবং NULL নয়
Roll = NULL, Name = Sima Invalid Primary key NULL হতে পারে না
Roll = 1, Name = Amit Invalid, যদি Roll 1 আগে থেকেই থাকে Primary key duplicate হতে পারে না

  Entity Integrity এবং Referential Integrity-এর পার্থক্য

বিষয় Entity Integrity Referential Integrity
প্রযোজ্য ক্ষেত্র একটি single table-এর primary key-এর উপর দুটি table-এর primary key ও foreign key-এর সম্পর্কের উপর
মূল নিয়ম Primary key NULL বা duplicate হতে পারবে না Foreign key অবশ্যই related primary key-এর valid value refer করবে
উদ্দেশ্য প্রতিটি row uniquely identify করা দুটি table-এর মধ্যে valid relationship বজায় রাখা
উদাহরণ Student table-এ Roll primary key Result table-এর Roll Student table-এর Roll refer করে

  Entity Integrity Constraint-এর গুরুত্ব

  •   এটি প্রতিটি record-কে uniquely identify করতে সাহায্য করে।
  •   Duplicate record কমাতে সাহায্য করে।
  •   Database-এর data accuracy বজায় রাখে।
  •   Table-এর প্রতিটি row-এর clear identity নিশ্চিত করে।
  •   Primary key-এর মাধ্যমে data retrieval সহজ করে।

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

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

ধরা যাক, একটি class register আছে। প্রত্যেক ছাত্রের একটি Roll Number থাকে। যদি কোনো ছাত্রের Roll Number না থাকে, তাহলে তাকে register থেকে আলাদাভাবে চেনা কঠিন হবে। আবার যদি দুইজন ছাত্রের Roll Number একই হয়, তাহলে কোন record কার তা বোঝা কঠিন হবে।

Database-এও একই নিয়ম প্রযোজ্য। Primary key হলো Roll Number-এর মতো। তাই primary key NULL হতে পারবে না এবং duplicate হতে পারবে না। এই নিয়মই Entity Integrity Constraint।


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

  প্রথমে Entity Integrity Constraint-এর সংজ্ঞা লিখবে।
  তারপর লিখবে এটি primary key-এর উপর প্রযোজ্য।
  উল্লেখ করবে primary key NULL হতে পারে না।
  উল্লেখ করবে primary key duplicate হতে পারে না।
  Student table-এর Roll primary key example দিলে উত্তরটি সম্পূর্ণ হবে।


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

  Entity Integrity মানে primary key কখনো NULL নয়, duplicate নয়।


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

DBMS-এর Relational Model-এ Entity Integrity Constraint হলো এমন একটি নিয়ম, যা নিশ্চিত করে যে একটি table-এর প্রতিটি row বা tuple primary key-এর মাধ্যমে uniquely identify করা যাবে। এই constraint primary key-এর উপর প্রযোজ্য হয়। Entity Integrity Constraint অনুযায়ী primary key কখনো NULL হতে পারে না এবং duplicate হতে পারে না। যদি কোনো table-এ primary key value NULL হয় বা একই primary key value একাধিক row-তে থাকে, তাহলে Entity Integrity Constraint violation ঘটে। উদাহরণস্বরূপ, Student table-এ Roll যদি primary key হয়, তাহলে Roll value প্রতিটি student-এর জন্য unique হতে হবে এবং কোনো student-এর Roll NULL হতে পারবে না।