উত্তর: 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 violation ঘটে মূলত দুইটি ক্ষেত্রে:
কারণ primary key-এর কাজ হলো প্রতিটি row-কে আলাদাভাবে শনাক্ত করা। যদি primary key NULL হয়, তাহলে row-টি identify করা যাবে না। আবার যদি duplicate হয়, তাহলে দুটি row-এর মধ্যে পার্থক্য করা কঠিন হয়ে যাবে।
ধরা যাক, একটি 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 নয়।
নিচের 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 ঘটেছে।
নিচের 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 ঘটেছে।
Entity Integrity Constraint primary key-এর সাথে সরাসরি সম্পর্কিত। Primary key-এর দুটি গুরুত্বপূর্ণ নিয়ম আছে:
এই দুইটি নিয়ম বজায় রাখার মাধ্যমেই Entity Integrity নিশ্চিত করা হয়।
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 করা যাবে না।
| 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 |
|---|---|---|
| প্রযোজ্য ক্ষেত্র | একটি 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 করে |
শিক্ষক ছাত্রদের এভাবে বোঝাতে পারেন:
ধরা যাক, একটি 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 হতে পারবে না।