ID (Indonesia) Translation

MySQL - Kunci Komposit

Halo, para entusiastik basis data yang sedang berkembang! Hari ini, kita akan memulai perjalanan yang menarik ke dunia Kunci Komposit MySQL. Jangan khawatir jika Anda masih baru dalam pemrograman - saya akan memandu Anda langkah demi langkah dalam konsep ini, sama seperti yang saya lakukan bagi ribuan murid selama tahun-tahun mengajar saya. Jadi, ambil secangkir minuman favorit Anda, dan mari kita masuk ke dalamnya!

MySQL - Composite Key

Apa Itu Kunci Komposit?

Sebelum kita masuk ke hal-hal yang lebih rinci, mari kita mengerti apa itu kunci komposit. Bayangkan Anda sedang mengatur sebuah pustaka besar. Anda mungkin berpikir bahwa judul buku saja cukup untuk mengidentifikasi buku secara unik. Tetapi, apa jika ada dua buku dengan judul yang sama? Itu adalah saat kunci komposit menjadi berguna!

Kunci komposit adalah kombinasi dari dua atau lebih kolom yang bersama-sama mengidentifikasi unik satu baris di dalam tabel. Itu seperti menggunakan baik judul buku dan nama penulis untuk memastikan Anda membahas buku tepat yang Anda inginkan.

Membuat Kunci Komposit MySQL

Sekarang kita mengerti apa itu kunci komposit, mari belajar bagaimana membuatnya di MySQL. Kita akan menggunakan contoh sederhana dari tabel library untuk mengilustrasikan konsep ini.

Langkah 1: Membuat Tabel Dengan Kunci Komposit

CREATE TABLE library (
book_title VARCHAR(100),
author_name VARCHAR(50),
publish_year INT,
ISBN VARCHAR(13),
PRIMARY KEY (book_title, author_name)
);

Dalam contoh ini, kita membuat tabel yang disebut library. Kunci komposit terbentuk dari kombinasi book_title dan author_name. Ini berarti meskipun kita mungkin memiliki banyak buku dengan judul yang sama atau banyak buku yang ditulis oleh penulis yang sama, kombinasi judul dan penulis harus unik.

Langkah 2: Menyisipkan Data

Ayo menambahkan beberapa buku ke pustaka kita:

INSERT INTO library (book_title, author_name, publish_year, ISBN)
VALUES
('The Great Gatsby', 'F. Scott Fitzgerald', 1925, '9780743273565'),
('To Kill a Mockingbird', 'Harper Lee', 1960, '9780446310789'),
('1984', 'George Orwell', 1949, '9780451524935'),
('Pride and Prejudice', 'Jane Austen', 1813, '9780141439518');

Sekarang, jika kita mencoba menyisipkan entri duplikat:

INSERT INTO library (book_title, author_name, publish_year, ISBN)
VALUES ('The Great Gatsby', 'F. Scott Fitzgerald', 2000, '1234567890123');

MySQL akan memberikan kesalahan karena kita melanggar constraint kunci komposit. Kombinasi 'The Great Gatsby' dan 'F. Scott Fitzgerald' sudah ada di tabel kita.

Menghapus Kunci Komposit MySQL

kadang-kadang, Anda mungkin perlu menghapus kunci komposit. Jangan khawatir; itu tidak begitu menakutkan! Itu seperti memutuskan untuk mengatur pustaka Anda dengan cara yang berbeda.

Berikut adalah cara untuk menghapus kunci komposit:

ALTER TABLE library
DROP PRIMARY KEY;

Perintah ini menghapus constraint kunci utama dari tabel library. Tetapi hati-hati! Ini berarti Anda tidak lagi memiliki identifier unik untuk baris Anda, yang dapat mengakibatkan entri duplikat.

Kunci Komposit Menggunakan Program Klien

Sekarang, mari lihat bagaimana kita bisa bekerja dengan kunci komposit menggunakan program klien MySQL. Saya akan menggunakan program klien baris perintah MySQL untuk contoh ini, tetapi konsep ini berlaku untuk program klien lainnya juga.

  1. Pertama, hubungi server MySQL Anda:
mysql -u your_username -p
  1. Pilih basis data Anda:
USE your_database_name;
  1. Sekarang, buat tabel baru dengan kunci komposit:
CREATE TABLE students (
student_id INT,
course_id INT,
enrollment_date DATE,
grade FLOAT,
PRIMARY KEY (student_id, course_id)
);

Dalam contoh ini, kita membuat tabel students di mana setiap baris mewakili seorang murid yang mendaftar di sebuah kursus. Kunci komposit terbentuk dari student_id dan course_id, memastikan bahwa seorang murid tidak bisa mendaftar di kursus yang sama dua kali.

  1. Ayo sisipkan beberapa data:
INSERT INTO students (student_id, course_id, enrollment_date, grade)
VALUES
(1, 101, '2023-09-01', 85.5),
(1, 102, '2023-09-01', 92.0),
(2, 101, '2023-09-01', 78.5),
(2, 103, '2023-09-02', 88.0);
  1. Sekarang, jika kita mencoba menyisipkan entri duplikat:
INSERT INTO students (student_id, course_id, enrollment_date, grade)
VALUES (1, 101, '2023-09-15', 90.0);

Program klien akan menampilkan pesan kesalahan karena kita melanggar constraint kunci komposit.

Kesimpulan

Selamat! Anda baru saja mengambil langkah pertama ke dunia Kunci Komposit MySQL. Ingat, kunci komposit adalah seperti pasangan dinamis di dunia basis data - mereka bekerja bersama untuk menjaga data Anda unik dan terorganisir.

Sekarang Anda teruskan menjalankan basis data, Anda akan menemukan bahwa kunci komposit sangat berguna dalam menjaga integritas data dan mengatur hubungan antara tabel. Mereka sangat cocok saat satu kolom saja tidak cukup untuk mengidentifikasi unik baris.

Terus latihan, dan segera Anda akan membuat dan mengelola kunci komposit seperti seorang ahli! Dan ingat, di dunia basis data, sama seperti dalam kehidupan, kadang-kadang dua (atau lebih) lebih baik daripada satu!

Metode Deskripsi
CREATE TABLE ... PRIMARY KEY (kolom1, kolom2) Membuat tabel dengan kunci komposit
ALTER TABLE ... ADD PRIMARY KEY (kolom1, kolom2) Menambahkan kunci komposit ke tabel yang sudah ada
ALTER TABLE ... DROP PRIMARY KEY Menghapus kunci utama (komposit atau tidak) dari tabel
INSERT INTO ... VALUES ... Menyisipkan data, menghormati constraint kunci komposit
SELECT ... WHERE kolom1 = nilai1 AND kolom2 = nilai2 Mengambil data menggunakan kunci komposit

Hati-hati coding, dan semoga basis data Anda selalu terorganisir dan efisien!

Credits: Image by storyset