ডেটাবেজ শব্দটি বিশ্লেষণ করলে দুইটি ইংরেজি শব্দ Data ও Base পাওয়া যায়, যার অর্থ যথাক্রমে উপাত্ত ও ঘাঁটি। তাহলে বলা যায়, Database হচ্ছে ডেটা বা উপাত্তের ঘাঁটি যেখানে অনেক পরিমান ডেটা সুন্দরভাবে সাজিয়ে রাখা হয়, যাতে পরে সহজে ডেটা খুঁজে পাওয়া, পরিবর্তন করা বা ব্যবহার করা যায়।
ডেটাবেজ বলতে বোঝায় কম্পিউটারে রাখা তথ্যের একটি গোছানো সংগ্রহ, যেখানে তথ্য এমনভাবে রাখা থাকে যাতে দ্রুত ও সহজে ব্যবহার করা যায়।
কলেজের ছাত্রদের নাম, রোল, ক্লাস, ঠিকানা ইত্যাদি এক জায়গায় রাখা হলে সেটাই একটা ডেটাবেজ।
| roll | name | class | section |
|---|---|---|---|
| 1 | Rudra | 11 | A |
| 2 | Habib | 12 | A |
| 3 | Pappu | 11 | B |
DBMS হলো এমন একটি সফটওয়্যার, যা দিয়ে ডেটাবেজ তৈরি, সংরক্ষণ, পরিবর্তন ও নিয়ন্ত্রণ করা হয়। MySQL, Oracle, Microsoft Access বহুলব্যবহৃত কিছু ডেটাবেজ ম্যানেজমেন্ট সিস্টেম।
রিলেশনাল ডেটাবেজ হলো এমন ডেটাবেজ যেখানে তথ্য টেবিল (Table) আকারে রাখা হয় এবং একাধিক টেবিলের মধ্যে সম্পর্ক (Relation) থাকে।
টেবিল হলো ডেটাবেজের মূল অংশ, যেখানে তথ্য সারি (Row) ও কলাম (Column) আকারে থাকে।
Row (Record): একটি সম্পূর্ণ তথ্য
Column (Field): একটি নির্দিষ্ট ধরনের তথ্য
প্রাইমারি কি হলো এমন একটি ফিল্ড, যা দিয়ে একটি রেকর্ডকে আলাদা করে শনাক্ত করা যায়।
ফরেন কি হলো এমন একটি কি, যা এক টেবিলের সাথে আরেক টেবিলের সম্পর্ক তৈরি করে।
SQL (Structured Query Language) হলো একটি উচ্চস্তরের ভাষা, যার মাধ্যমে ডাটাবেজে তথ্য সংরক্ষণ, অনুসন্ধান, পরিবর্তন ও মুছে ফেলার কাজ করা হয়। SQL–এর কাজগুলোকে সহজভাবে দুই ভাগে ভাগ করা যায়—
| ডাটা টাইপ | ব্যবহার |
|---|---|
| INT | পূর্ণসংখ্যা সংরক্ষণের জন্য ব্যবহৃত হয় |
| FLOAT | দশমিক সংখ্যা সংরক্ষণের জন্য ব্যবহৃত হয় |
| DOUBLE | বড় দশমিক সংখ্যা সংরক্ষণের জন্য ব্যবহৃত হয় |
| CHAR | নির্দিষ্ট দৈর্ঘ্যের টেক্সট সংরক্ষণের জন্য ব্যবহৃত হয় |
| VARCHAR | পরিবর্তনশীল দৈর্ঘ্যের টেক্সট সংরক্ষণের জন্য ব্যবহৃত হয় |
| TEXT | দীর্ঘ লেখা সংরক্ষণের জন্য ব্যবহৃত হয় |
| DATE | তারিখ সংরক্ষণের জন্য ব্যবহৃত হয় |
| TIME | সময় সংরক্ষণের জন্য ব্যবহৃত হয় |
| DATETIME | তারিখ ও সময় একসাথে সংরক্ষণের জন্য ব্যবহৃত হয় |
| BOOLEAN | সত্য বা মিথ্যা মান সংরক্ষণের জন্য ব্যবহৃত হয় |
| ফিল্ডের নাম | ডাটা টাইপ | বর্ণনা |
|---|---|---|
| student_id | INT (PK) | শিক্ষার্থীর ইউনিক আইডি |
| name | VARCHAR(50) | শিক্ষার্থীর নাম |
| department | VARCHAR(30) | বিভাগের নাম |
| roll | name | class | section |
|---|---|---|---|
| 1 | Rudra | 11 | A |
| 2 | Habib | 12 | A |
| 3 | Pappu | 11 | B |
| id | roll | address | mobile_no |
|---|---|---|---|
| 101 | 1 | Gopalganj | 012542 |
| 102 | 2 | Narayanganj | 014435 |
| 103 | 3 | Barisal | 015322 |
| id | roll | subject | marks |
|---|---|---|---|
| 101 | 1 | ICT | 88 |
| 102 | 1 | Bangla | 76 |
| 103 | 2 | ICT | 82 |
| 104 | 2 | Bangla | 75 |
| Subject Name | Subject Code |
|---|---|
| Bangla | 101 |
| ICT | 275 |
| Physics | 174 |
| History | 304 |
| Civics | 269 |
| Accounting | 253 |
| Economics | 109 |
CREATE TABLE students
(
student_id INTEGER PRIMARY KEY,
name TEXT,
department TEXT,
age INTEGER
);
INSERT INTO students VALUES (1, 'Rahim', 'CSE', 22);
INSERT INTO students VALUES (2, 'Karim', 'EEE', 23);
INSERT INTO students VALUES (3, 'Sultana', 'CSE', 21);
INSERT INTO students VALUES (4, 'Nila', 'BBA', 22);
INSERT INTO students VALUES (5, 'Biplob', 'EEE', 24);
| Field | Type | Description |
|---|---|---|
| student_id | INT (PK) | Unique Student ID |
| name | VARCHAR(50) | Student Name |
| age | INT | Student Age |
| department | VARCHAR(30) | Department Name |
CREATE TABLE juno_students (
student_id INT PRIMARY KEY,
name VARCHAR(50),
age INT,
department VARCHAR(30)
);
এখানে %d বোঝায় ইনপুটটি একটি integer, আর &age বোঝায় ভ্যারিয়েবলের ঠিকানা, যেখানে মান সংরক্ষিত হবে।
printf() ফাংশনের মাধ্যমে কোনো ফলাফল বা বার্তা স্ক্রিনে দেখানো হয়।
ডেটাবেজ শব্দটি বিশ্লেষণ করলে দুইটি ইংরেজি শব্দ Data ও Base পাওয়া যায়, যার অর্থ যথাক্রমে উপাত্ত ও ঘাঁটি। তাহলে বলা যায়, Database হচ্ছে ডেটা বা উপাত্তের ঘাঁটি যেখানে অনেক পরিমান ডেটা সুন্দরভাবে সাজিয়ে রাখা হয়, যাতে পরে সহজে ডেটা খুঁজে পাওয়া, পরিবর্তন করা বা ব্যবহার করা যায়।