Database Full Course for Beginners – Jifunze Database Step by Step | htpps://aulink.com
Database ni nini?
Database ni sehemu maalumu ya kuhifadhi taarifa kwa mpangilio ili ziwe rahisi kutunzwa, kutafutwa, kusasishwa na kufutwa. Mfano wa taarifa zinazoweza kuhifadhiwa kwenye database ni majina ya wanafunzi, alama, malipo, bidhaa, watumiaji, taarifa za shule, na ripoti mbalimbali.
Mfano: shule inaweza kuwa na database ya wanafunzi yenye jina, jinsia, darasa, namba ya simu, na matokeo yao.
Kwa nini tujifunze Database?
Database hutumika karibu kwenye kila mfumo wa kisasa kama website, app, mfumo wa shule, hospitali, duka, benki, na mitandao ya kijamii. Bila database, taarifa haziwezi kuhifadhiwa vizuri.
Faida za database ni kuhifadhi taarifa nyingi, kupata taarifa haraka, kupunguza makosa, kulinda taarifa, na kurahisisha kutengeneza ripoti.
Aina za Database
1. Relational Database
Hii hutumia tables kuhifadhi taarifa. Mfano wake ni MySQL, PostgreSQL, SQLite, na Oracle.
2. Non-Relational Database
Hii haitumii tables kwa mfumo wa kawaida. Mfano wake ni MongoDB.
Kwa beginners, ni vizuri kuanza na Relational Database, hasa MySQL.
Table ni nini?
Table ni kama jedwali lenye columns na rows.
Mfano wa table ya wanafunzi:
id jina jinsia darasa
1 Asha Female Form One
2 Juma Male Form Two
Column ni sehemu kama jina, jinsia, darasa.
Row ni record moja ya taarifa.
Database Terms Muhimu
Database: sehemu ya kuhifadhi tables.
Table: jedwali la taarifa.
Column: aina ya taarifa inayohifadhiwa.
Row/Record: taarifa moja kamili.
Primary Key: column ya kipekee kutambua record, mfano id.
Foreign Key: column inayounganisha table moja na nyingine.
SQL: lugha ya kuwasiliana na database.
SQL ni nini?
SQL maana yake ni Structured Query Language. Hutumika kuunda database, kuunda tables, kuingiza taarifa, kusoma taarifa, kusasisha taarifa, na kufuta taarifa.
Hatua ya 1: Kutengeneza Database
CREATE DATABASE shule_db;
Kutumia database:
USE shule_db;
Hatua ya 2: Kutengeneza Table
CREATE TABLE students (
id INT AUTO_INCREMENT PRIMARY KEY,
student_name VARCHAR(100) NOT NULL,
gender VARCHAR(20),
class_name VARCHAR(50),
phone_number VARCHAR(20)
);
Maelezo:
id ni Primary Key.
AUTO_INCREMENT huongeza namba yenyewe.
VARCHAR huhifadhi maandishi.
NOT NULL maana yake field lazima ijazwe.
Hatua ya 3: Kuingiza Data
INSERT INTO students (student_name, gender, class_name, phone_number)
VALUES ('Asha Mohamed', 'Female', 'Form One', '0712345678');
Kuingiza records nyingi:
INSERT INTO students (student_name, gender, class_name, phone_number)
VALUES
('Juma Ally', 'Male', 'Form Two', '0755555555'),
('Neema John', 'Female', 'Form One', '0766666666');
Hatua ya 4: Kusoma Data
Kuona wanafunzi wote:
SELECT * FROM students;
Kuona columns maalumu:
SELECT student_name, gender, class_name FROM students;
Kutafuta mwanafunzi mmoja:
SELECT * FROM students WHERE id = 1;
Hatua ya 5: Kusasisha Data
UPDATE students
SET phone_number = '0788888888'
WHERE id = 1;
Muhimu: Usisahau WHERE, maana bila hiyo unaweza kubadilisha records zote.
Hatua ya 6: Kufuta Data
DELETE FROM students WHERE id = 2;
Kufuta records zote ndani ya table:
DELETE FROM students;
Hatua ya 7: Kutengeneza Table ya Marks
CREATE TABLE marks (
id INT AUTO_INCREMENT PRIMARY KEY,
student_id INT,
subject_name VARCHAR(100),
test1 INT,
test2 INT,
exam INT,
total INT,
average DECIMAL(5,2),
grade VARCHAR(5),
FOREIGN KEY (student_id) REFERENCES students(id)
);
Hapa student_id inaunganisha marks na mwanafunzi aliyepo kwenye table ya students.
Hatua ya 8: Kuingiza Marks
INSERT INTO marks (student_id, subject_name, test1, test2, exam)
VALUES (1, 'Mathematics', 20, 25, 45);
Hatua ya 9: Kuunganisha Tables kwa JOIN
SELECT students.student_name, students.class_name, marks.subject_name, marks.test1, marks.test2, marks.exam
FROM students
JOIN marks ON students.id = marks.student_id;
JOIN hutumika kupata taarifa kutoka tables mbili au zaidi.
Hatua ya 10: Kutumia ORDER BY
Kupanga wanafunzi kwa majina:
SELECT * FROM students ORDER BY student_name ASC;
Kupanga marks kuanzia kubwa:
SELECT * FROM marks ORDER BY exam DESC;
Hatua ya 11: Kutumia COUNT, SUM, AVG
Kuhesabu wanafunzi:
SELECT COUNT(*) AS total_students FROM students;
Kupata jumla ya marks:
SELECT SUM(exam) AS total_exam_marks FROM marks;
Kupata wastani:
SELECT AVG(exam) AS average_exam FROM marks;
Hatua ya 12: Kutumia LIKE kwa Search
SELECT * FROM students WHERE student_name LIKE '%Asha%';
Hii hutafuta jina lenye neno Asha.
Hatua ya 13: Kutumia LIMIT
SELECT * FROM students LIMIT 10;
Hii huonyesha records 10 tu.
Hatua ya 14: Data Types Muhimu
INT kwa namba kamili.
VARCHAR kwa maandishi mafupi.
TEXT kwa maandishi marefu.
DATE kwa tarehe.
DECIMAL kwa pesa au wastani.
TIMESTAMP kwa muda wa record kuundwa.
Hatua ya 15: Mfano wa Mfumo Mdogo wa Shule
Database inaweza kuwa na tables hizi:
CREATE TABLE classes (
id INT AUTO_INCREMENT PRIMARY KEY,
class_name VARCHAR(100) NOT NULL
);
CREATE TABLE subjects (
id INT AUTO_INCREMENT PRIMARY KEY,
subject_name VARCHAR(100) NOT NULL
);
CREATE TABLE students (
id INT AUTO_INCREMENT PRIMARY KEY,
student_name VARCHAR(100) NOT NULL,
gender VARCHAR(20),
class_id INT,
FOREIGN KEY (class_id) REFERENCES classes(id)
);
CREATE TABLE marks (
id INT AUTO_INCREMENT PRIMARY KEY,
student_id INT,
subject_id INT,
exam_type VARCHAR(50),
marks INT,
FOREIGN KEY (student_id) REFERENCES students(id),
FOREIGN KEY (subject_id) REFERENCES subjects(id)
);
Best Practices za Database
Tumia id kama Primary Key.
Usirudie data bila sababu.
Tumia Foreign Key kuunganisha tables.
Tumia majina rahisi ya tables na columns.
Linda database kwa password imara.
Usifute data muhimu bila backup.
Tumia WHERE wakati wa UPDATE na DELETE.
Makosa ya Beginners
Kusahau kutumia WHERE.
Kutotumia Primary Key.
Kuweka data zote kwenye table moja kubwa.
Kutotengeneza relationship kati ya tables.
Kutotumia backup.
Kutumia majina yenye nafasi kama student name badala ya student_name.
Hitimisho
Database ni msingi wa mifumo mingi ya kisasa. Ukiielewa vizuri, utaweza kutengeneza systems kama school management system, accounting system, blog system, online shop, hospital system, na attendance system. Anza na MySQL, jifunze SQL commands, tengeneza tables, weka relationships, kisha unganisha na PHP au lugha nyingine.
Endelea kujifunza kupitia Faulink.com kwa masomo zaidi ya programming, database, PHP, MySQL, HTML, CSS, JavaScript na mifumo ya shule.
🚀 Unahitaji mfumo au website ya biashara?
Chagua huduma hapa chini kisha mteja bofya moja kwa moja kwenda kwenye ukurasa wa huduma au kuwasiliana nasi kwa WhatsApp.