ষষ্ঠ অধ্যায় পাঠ-৭: ডেটাবেজ মডেল এবং কী ফিল্ড
লেখক পরিচিতি:
👨🏫 MD BELAL HOSSAIN NEEL
📌 ICT Lecturer
🏫 Lakshmipur Victory College
🎓 18th NTRCA Qualified ICT Teacher
📞 01628 409930
একটি কলেজে নতুন এক শিক্ষার্থী রিয়াদ তার ICT ক্লাসে প্রথমবার ডেটাবেজ শিখছে। ক্লাসের শুরুতেই তার শিক্ষক বললেন:
“ডেটাবেজ শুধু তথ্য জমা রাখার জায়গা নয়। এটি হলো তথ্যকে সাজানোর, সংরক্ষণ করার এবং সম্পর্ক বুঝানোর কৌশল। আমরা এর জন্য বিভিন্ন ডেটাবেজ মডেল ব্যবহার করি।”
রিয়াদ কৌতূহল নিয়ে জিজ্ঞেস করল, “স্যার, কোন কোন মডেল আছে?”
শিক্ষক বললেন:
-
লিনিয়ার মডেল: সরলভাবে তথ্য এক লাইনে সাজানো।
-
ER (Entity-Relationship) মডেল: তথ্যের মধ্যে সম্পর্ক বোঝাতে ব্যবহৃত।
-
রিলেশনাল মডেল: টেবিল আকারে তথ্য সংরক্ষণ।
-
হায়ারার্কিক্যাল মডেল: গাছের মতো তথ্য সাজানো।
-
নেটওয়ার্ক মডেল: জটিল সম্পর্ক many-to-many দেখায়।
-
অবজেক্ট ওরিয়েন্টেড মডেল: তথ্য অবজেক্ট আকারে সংরক্ষণ।
রিয়াদ আরও জানতে চাইল, “স্যার, ER মডেলটা কেমন কাজ করে?”
শিক্ষক বললেন, “ধরো একজন ছাত্র হলো এনটিটি, তার নাম, রোল নম্বর হলো অ্যাট্রিবিউট। সব ছাত্রের তথ্য একত্র করলে সেটা হবে এনটিটি সেট বা টেবিল। আর ছাত্র ও শিক্ষক যে সম্পর্ক তৈরি করে সেটা হলো রিলেশনশিপ।”
রিয়াদ উদাহরণ চাইল, শিক্ষক বললেন:
-
Unary relationship: একজন মানুষ অন্য একজন মানুষকে বিয়ে করে।
-
Binary relationship: শিক্ষক ছাত্রকে শেখান।
-
Ternary relationship: বিক্রেতা, পণ্য ও ওয়্যারহাউজ মিলিয়ে কাজ করে।
শিক্ষক ER Diagram দেখালেন যাতে রিয়াদ সহজে বুঝতে পারে কিভাবে টেবিলগুলো একে অপরের সাথে সম্পর্কিত।
পরের ক্লাসে শিক্ষক বললেন, “একটি টেবিলের সব রেকর্ড সনাক্ত করতে কী ফিল্ড ব্যবহার করা হয়। এগুলো হতে পারে:
-
ক্যান্ডিডেট কী (Candidate Key): যেকোনো রেকর্ড অদ্বিতীয়ভাবে সনাক্ত করতে পারে।
-
প্রাইমারি কী (Primary Key): মূল কী, যেটি একাধিক টেবিলের সম্পর্ক স্থাপন করতে সাহায্য করে।
-
কম্পোজিট প্রাইমারি কী (Composite PK): একাধিক ফিল্ড মিলিয়ে প্রাইমারি কী তৈরি।
-
ফরেন কী (Foreign Key): অন্য টেবিলের প্রাইমারি কীকে রেফারেন্স করে সম্পর্ক স্থাপন।
রিয়াদ উদাহরণ চাইল, শিক্ষক দেখালেন:
-
Product Table-এ Product_ID হলো প্রাইমারি কী।
-
Student Table-এ Roll + Section হতে পারে কম্পোজিট প্রাইমারি কী।
-
Teacher Table-এ S_id হলো ফরেন কী, যেটা Subject_info টেবিলের প্রাইমারি কীকে রেফারেন্স করে।
শিক্ষক শেষ করলেন, “যেকোনো টেবিলের রেকর্ড হলো এক একটি এনটিটি, এবং প্রতিটি ফিল্ড/কলাম হলো তার বৈশিষ্ট্য। তবে মনে রেখো, ফিল্ড ও রেকর্ড এক নয়। ফিল্ড হলো কলাম, রেকর্ড হলো সারি।”
রিয়াদ খুশি হয়ে বলল, “স্যার, এখন আমি বুঝতে পারছি কিভাবে ডেটা সাজানো হয়, কী ফিল্ড ব্যবহৃত হয় এবং টেবিলের মধ্যে সম্পর্ক তৈরি হয়।”
শিক্ষক শেষ করলেন ছোট এক উপদেশ দিয়ে,
“ডেটাবেজ হলো তথ্যের রাজ্য। তুমি যদি রাজাকে চেনো, তুমি সবকিছুই সহজে খুঁজে পাবে।”
🎯 বহুনির্বাচনী প্রশ্ন (MCQ) – SQL Commands
১. SQL এর পূর্ণরূপ কী?
ক) Structured Question Language
খ) Structured Query Language ✅
গ) System Query Language
ঘ) Sequential Query Language
২. ডেটাবেজ থেকে তথ্য অনুসন্ধানের জন্য কোন কমান্ড ব্যবহার করা হয়?
ক) UPDATE
খ) DELETE
গ) SELECT ✅
ঘ) INSERT
৩. নতুন টেবিল তৈরির জন্য কোন কমান্ড ব্যবহার করা হয়?
ক) CREATE TABLE ✅
খ) NEW TABLE
গ) MAKE TABLE
ঘ) ADD TABLE
৪. টেবিলের ডেটা পরিবর্তনের জন্য কোন কমান্ড ব্যবহৃত হয়?
ক) ALTER
খ) UPDATE ✅
গ) DELETE
ঘ) RENAME
৫. টেবিলে নতুন তথ্য যোগ করার জন্য কোন কমান্ড ব্যবহৃত হয়?
ক) ADD DATA
খ) INSERT INTO ✅
গ) UPDATE
ঘ) CREATE
৬. SQL-এ টেবিল মুছে ফেলার জন্য কোন কমান্ড ব্যবহৃত হয়?
ক) REMOVE TABLE
খ) DELETE
গ) DROP TABLE ✅
ঘ) ERASE
৭. টেবিলের সব রেকর্ড মুছে ফেলতে কোন কমান্ড ব্যবহার করা হয়?
ক) REMOVE
খ) TRUNCATE ✅
গ) DROP
ঘ) ERASE
৮. টেবিলের কাঠামো পরিবর্তনের জন্য কোন কমান্ড ব্যবহার করা হয়?
ক) UPDATE
খ) ALTER TABLE ✅
গ) MODIFY
ঘ) CHANGE
৯. শর্ত অনুযায়ী তথ্য বের করতে কোন clause ব্যবহার করা হয়?
ক) WHERE ✅
খ) HAVING
গ) GROUP BY
ঘ) ORDER
১০. ডেটা ascending বা descending সাজানোর জন্য কোন clause ব্যবহৃত হয়?
ক) SORT BY
খ) ORDER BY ✅
গ) GROUP BY
ঘ) ARRANGE BY
১১. SQL এ * চিহ্নের মানে কী?
ক) সব টেবিল
খ) সব রেকর্ড
গ) সব কলাম ✅
ঘ) সব ডেটা মুছে ফেলা
১২. SELECT COUNT(*) কী নির্দেশ করে?
ক) কলামের নাম
খ) রেকর্ডের সংখ্যা ✅
গ) ডেটাবেজের সংখ্যা
ঘ) টেবিলের নাম
১৩. GROUP BY clause এর মূল কাজ কী?
ক) ডেটা ডিলিট করা
খ) ডেটা সাজানো
গ) একই মান অনুযায়ী ডেটা গ্রুপ করা ✅
ঘ) নতুন টেবিল তৈরি করা
১৪. HAVING clause সাধারণত কোনটির সাথে ব্যবহৃত হয়?
ক) ORDER BY
খ) GROUP BY ✅
গ) WHERE
ঘ) CREATE
১৫. SQL এ LIKE অপারেটর কোন কাজে ব্যবহৃত হয়?
ক) তুলনা করা
খ) প্যাটার্ন অনুসন্ধান ✅
গ) গ্রুপ করা
ঘ) সাজানো
১৬. একটি টেবিলের নাম পরিবর্তনের জন্য কোন কমান্ড ব্যবহৃত হয়?
ক) ALTER TABLE … RENAME ✅
খ) UPDATE TABLE … NAME
গ) CHANGE TABLE … NAME
ঘ) MODIFY TABLE … NAME
১৭. DELETE কমান্ড কী করে?
ক) টেবিল ডিলিট করে
খ) রেকর্ড ডিলিট করে ✅
গ) ডেটাবেজ ডিলিট করে
ঘ) কলাম ডিলিট করে
১৮. PRIMARY KEY এর কাজ কী?
ক) টেবিল সাজানো
খ) টেবিলের ডুপ্লিকেট ডেটা প্রতিরোধ ✅
গ) টেবিলের কলাম বাড়ানো
ঘ) টেবিল মুছে ফেলা
১৯. FOREIGN KEY এর কাজ কী?
ক) অন্য টেবিলের সাথে সম্পর্ক তৈরি করা ✅
খ) টেবিল মুছে ফেলা
গ) কলাম পরিবর্তন করা
ঘ) ডেটা সাজানো
২০. SQL এ কোন কমান্ড দিয়ে একটি কলামের সর্বোচ্চ মান বের করা যায়?
ক) MAX() ✅
খ) MIN()
গ) AVG()
ঘ) SUM()✨ জ্ঞানমূলক প্রশ্ন (Knowledge Based)
প্রশ্ন-১: ডেটাবেজ (Database) কী?
👉 উত্তর: ডেটাবেজ হলো তথ্যকে সুশৃঙ্খলভাবে সংরক্ষণ, অনুসন্ধান ও ব্যবহারের জন্য কম্পিউটারে রাখা একটি সংগঠিত তথ্যভাণ্ডার।প্রশ্ন-২: DBMS-এর পূর্ণরূপ লিখ এবং এর কাজ উল্লেখ করো।
👉 উত্তর: DBMS = Database Management System। এর কাজ হলো তথ্য সংরক্ষণ, আপডেট, ডিলিট, অনুসন্ধান ও নিরাপদ ব্যবস্থাপনা।প্রশ্ন-৩: RDBMS কী?
👉 উত্তর: Relational Database Management System (RDBMS) হলো এমন একটি DBMS যেখানে টেবিল আকারে সারি (Row) ও কলাম (Column)-এর মাধ্যমে তথ্য সংরক্ষণ করা হয়।প্রশ্ন-৪: Primary Key বলতে কী বোঝ?
👉 উত্তর: Primary Key হলো টেবিলের এমন একটি ফিল্ড, যা দ্বারা প্রতিটি রেকর্ডকে স্বতন্ত্রভাবে চিহ্নিত করা যায়।প্রশ্ন-৫: Foreign Key এর ব্যবহার লিখ।
👉 উত্তর: Foreign Key ব্যবহার করা হয় একটি টেবিলের ফিল্ডকে অন্য টেবিলের Primary Key এর সাথে সম্পর্কিত করতে, যা টেবিলগুলোর মধ্যে সম্পর্ক (Relationship) তৈরি করে।✨ অনুধাবনমূলক প্রশ্ন ও উত্তর (HSC ICT – ষষ্ঠ অধ্যায়: ডেটাবেজ)
প্রশ্ন-১:
ডেটাবেজ ম্যানেজমেন্ট সিস্টেম (DBMS) ব্যবহারে শিক্ষাপ্রতিষ্ঠানের ফলাফল সংরক্ষণ কেন সহজ হয়?উত্তর:
DBMS-এ তথ্য টেবিল আকারে সংরক্ষিত হয় এবং সহজে সার্চ, আপডেট, ও রিপোর্ট করা যায়। ফলে শিক্ষার্থীর রোল বা আইডি দিয়ে দ্রুত ফলাফল বের করা সম্ভব।
প্রশ্ন-২:
একটি হাসপাতালের জন্য কেন রিলেশনাল ডেটাবেজ বেশি কার্যকর হবে?উত্তর:
হাসপাতালে রোগী, ডাক্তার, ওষুধ, বিলিং ইত্যাদি আলাদা টেবিলে রাখা যায় এবং Primary Key – Foreign Key এর মাধ্যমে সম্পর্ক স্থাপন করা যায়। এতে তথ্য পুনরাবৃত্তি কমে ও সঠিকভাবে ব্যবহার করা যায়।
প্রশ্ন-৩:
একটি কোম্পানি ম্যানুয়ালি কর্মচারীর তথ্য রাখছে। কেন তাদের DBMS ব্যবহার করা উচিত?উত্তর:
ম্যানুয়ালি রাখলে সময় বেশি লাগে, ভুল হওয়ার সম্ভাবনা থাকে, আর ডেটা সার্চ কঠিন হয়। DBMS ব্যবহার করলে তথ্য নিরাপদ, সঠিক ও দ্রুত পাওয়া যায়।
প্রশ্ন-৪:
যদি একটি স্কুলে শিক্ষার্থীর উপস্থিতি খাতায় রাখা হয়, এর পরিবর্তে ডেটাবেজে রাখার সুবিধা কী?উত্তর:
ডেটাবেজে উপস্থিতির তথ্য রাখলে সহজে দিনভিত্তিক রিপোর্ট, শতকরা হিসাব তৈরি করা যায় এবং শিক্ষক দ্রুত সিদ্ধান্ত নিতে পারেন।
প্রশ্ন-৫:
ডেটাবেজে Redundancy কমানো কেন গুরুত্বপূর্ণ?উত্তর:
একই তথ্য বারবার সংরক্ষণ করলে জায়গা নষ্ট হয় এবং তথ্যের Consistency নষ্ট হওয়ার ঝুঁকি থাকে। Redundancy কমালে জায়গা বাঁচে ও তথ্য নির্ভুল থাকে।