DBMS - Model Data
Assalamualaikum, penggemar basis data yang bersemangat! Saya sangat gembira untuk memulai perjalanan ini bersama Anda ke dalam dunia yang menarik Management Sistem Basis Data (DBMS) dan Model Data. Sebagai guru ilmu komputer yang ramah di lingkungan sekitar Anda dengan tahun-tahun pengalaman, saya di sini untuk membimbing Anda melalui konsep ini dengan cara yang menyenangkan dan mudah dipahami. mari kita masuk ke dalamnya!
Pengenalan Model Data
Sebelum kita masuk ke model data tertentu, mari kita mulai dengan analogi sederhana. Bayangkan Anda sedang mengatur perpustakaan besar. Bagaimana Anda akan menata bukunya? Menurut genre? Penulis? Tanggal terbit? Sistem organisasi ini mirip dengan model data di dunia basis data. Itu adalah cara untuk mengstrukturkan dan mewakili data sehingga mudah disimpan, diambil, dan dimanipulasi.
Dalam realm DBMS, kita akan fokus pada dua model data utama:
- Model Entity-Relationship
- Model Relasional
mari kita jelajahi masing-masing ini secara rinci.
Model Entity-Relationship
Apa itu Model Entity-Relationship?
Model Entity-Relationship (ER) mirip dengan membuat blueprint untuk basis data Anda. Itu adalah model data konseptual tingkat tinggi yang menggambarkan struktur basis data menggunakan entitas, atribut, dan hubungan.
Komponen Utama
-
Entitas: Pensejukkan entitas sebagai kata benda dalam basis data Anda. Mereka mewakili objek atau konsep dunia nyata. Misalnya, dalam basis data sekolah, entitas mungkin termasuk 'Student', 'Teacher', dan 'Course'.
-
Atribut: Ini adalah properti atau karakteristik entitas. Untuk entitas 'Student', atribut mungkin termasuk 'StudentID', 'Name', dan 'DateOfBirth'.
-
Hubungan: Ini menunjukkan bagaimana entitas terhubung satu sama lain. Misalnya, seorang 'Student' dapat 'Mendaftar' dalam 'Course'.
Diagram ER
Sebuah diagram ER adalah representasi visual dari komponen ini. mari kita buat diagram ER sederhana untuk basis data sekolah kami:
[Student] ---- Mendaftar Dalam ---- [Course]
| |
| |
StudentID CourseID
Name CourseName
DateOfBirth Credits
Diagram ini menunjukkan bahwa seorang Student dapat mendaftar dalam Course, dan kedua entitas ini memiliki atribut masing-masing.
Kardinalitas
Kardinalitas menentukan atribut numerik hubungan antara dua entitas. Jenis umum termasuk:
- Satu-ke-Satu (1:1)
- Satu-ke-Banyak (1:N)
- Banyak-ke-Banyak (M:N)
Dalam contoh kami, hubungan antara Student dan Course adalah Banyak-ke-Banyak, karena seorang murid dapat mendaftar dalam beberapa course, dan sebuah course dapat memiliki beberapa murid.
Model Relasional
Apa itu Model Relasional?
Sekarang, mari kita pindah dari blueprint (model ER) ke konstruksi nyata. Model Relasional mirip dengan membangun rak di perpustakaan kami. Itu mengatur data menjadi tabel (relasi) dengan baris (tupel) dan kolom (atribut).
Komponen Utama
-
Tabel (Relasi): Ini adalah inti model relasional. Setiap tabel mewakili entitas atau hubungan dari model ER.
-
Kolom (Atribut): Ini sesuai dengan atribut dalam model ER.
-
Baris (Tupel): Setiap baris dalam tabel mewakili contoh spesifik entitas.
-
Kunci Primer: Identifier unik untuk setiap baris dalam tabel.
-
Kunci Asing: Field dalam satu tabel yang secara unik mengidentifikasi baris lain dalam tabel lain.
Contoh: Tabel Student
mari kita buat tabel Student berdasarkan model ER kami:
StudentID | Name | DateOfBirth |
---|---|---|
1 | John Doe | 1998-05-15 |
2 | Jane Smith | 1999-02-20 |
3 | Bob Johnson | 1997-11-30 |
SQL: Membuat dan Membuat Query Tabel
Sekarang, mari kita lihat bagaimana kita dapat membuat dan membuat query tabel ini menggunakan SQL (Structured Query Language):
-- Membuat tabel Student
CREATE TABLE Student (
StudentID INT PRIMARY KEY,
Name VARCHAR(50),
DateOfBirth DATE
);
-- Menyisipkan data ke dalam tabel Student
INSERT INTO Student (StudentID, Name, DateOfBirth)
VALUES (1, 'John Doe', '1998-05-15'),
(2, 'Jane Smith', '1999-02-20'),
(3, 'Bob Johnson', '1997-11-30');
-- Query tabel Student
SELECT * FROM Student;
mari kitauraikan kode ini:
- Statement
CREATE TABLE
menentukan struktur tabel Student kami. - Statement
INSERT INTO
menambahkan data ke dalam tabel kami. - Statement
SELECT
mengambil semua data dari tabel Student.
Hubungan dalam Model Relasional
Ingat hubungan Banyak-ke-Banyak antara Student dan Course? Dalam model relasional, kita menangani ini dengan membuat tabel intermediate:
CREATE TABLE Enrollment (
StudentID INT,
CourseID INT,
EnrollmentDate DATE,
PRIMARY KEY (StudentID, CourseID),
FOREIGN KEY (StudentID) REFERENCES Student(StudentID),
FOREIGN KEY (CourseID) REFERENCES Course(CourseID)
);
Tabel Enrollment
ini menghubungkan tabel Student
dan Course
, memungkinkan kita untuk mewakili hubungan Banyak-ke-Banyak.
Kesimpulan
Dan begitu punya nya, teman-teman! Kita telah berpergian melalui model Entity-Relationship, membuat blueprint konseptual basis data kita, dan kemudian membawanya ke kehidupan dengan model Relasional. Ingat, sama seperti mengatur perpustakaan, mengatur basis data adalah tentang membuat informasi mudah disimpan, ditemukan, dan digunakan.
Saat kita menutup, saya teringat tentang seorang murid yang pernah berkata kepadaku, "Saya pernah melihat basis data sebagai lembar kerja yang membosankan, tapi sekarang saya melihatnya sebagai kastil pengetahuan yang magical!" Saya berharap tutorial ini telah menginspirasi kegembiraan serupa dalam Anda tentang dunia model data dan DBMS.
Tetap latih, tetap curiga, dan selamat belajar basis data!
Credits: Image by storyset