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!

DBMS - Data Models

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:

  1. Model Entity-Relationship
  2. 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

  1. 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'.

  2. Atribut: Ini adalah properti atau karakteristik entitas. Untuk entitas 'Student', atribut mungkin termasuk 'StudentID', 'Name', dan 'DateOfBirth'.

  3. 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:

  1. Satu-ke-Satu (1:1)
  2. Satu-ke-Banyak (1:N)
  3. 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

  1. Tabel (Relasi): Ini adalah inti model relasional. Setiap tabel mewakili entitas atau hubungan dari model ER.

  2. Kolom (Atribut): Ini sesuai dengan atribut dalam model ER.

  3. Baris (Tupel): Setiap baris dalam tabel mewakili contoh spesifik entitas.

  4. Kunci Primer: Identifier unik untuk setiap baris dalam tabel.

  5. 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:

  1. Statement CREATE TABLE menentukan struktur tabel Student kami.
  2. Statement INSERT INTO menambahkan data ke dalam tabel kami.
  3. 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