
Relation
Tujuannya adalah mengubah data menjadi informasi, dan informasi menjadi wawasan
– Carly Fiorina
Relasi (Relation)
Hubungan antara dua atau lebih entitas dalam sistem basis data. Entitas itu objek atau sesuatu yang ingin kita simpan informasinya, dan Relation menghubungkan antara entitas dengan entitas yang lain.
Apa Relasi Dalam ERD ?

ERD layaknya peta hubungan atara hal yang berbeda. Siswa, Kelas, dan Guru. Relasi di ERD menggambarkan bagaimana Siswa, Kelas, dan Guru saling terhubung.
Contoh :
- Siswa terhubung dengan kelas karena siswa belajar di kelas
- Guru terhubung dengan siswa karena guru mengajar siswa
Relasi menunjukkan siapa yang berhubungan dengan siapa.
Tipe – Tipe Relasi Yang Sederhana
- Satu ke Satu (One-to-One): Setiap siswa punya satu kartu perpustakaan, dan setiap kartu perpustakaan hanya punya satu siswa
- Satu ke banyak (One-to-Many): Satu guru bisa mengajar banyak siswa, tapi setiap siswa punya satu guru dalam satu mata pelajaran
- Banyak ke Banyak (Many-to-Many): Banyak siswa mengikuti banyak kegiatan ekstrakurikuler, di setiap kegiatan ekstrakurikuler bisa diikuti banyak siswa
Kenapa Relasi Many-to-Many Tidak Baik ?
- Susah Diatur: Ada banyak siswa yang ikut banyak kegiatan. Kalau kita ga ngatur dengan hati-hati, bisa sulit melacak siapa yang ikut kegiatan apa, dan banyak hubungan jadi buat sistem makin ribet.
- Duplikasi Data (Data Ganda): Kalau siswa ikut 5 kegiatan, informasi siswa itu tertulis 5 kali, bisa buat kita bingung dan salah saat mengolah data
- Bikin Sistem Jadi Lemot: Banyak hubungan entitas (Siswa dan Kegiatan), sistem komputer yang nyimpan data jadi lambat karena banyak yang harus diproses
Terus Gimana Solusinya ?

Bisa pakai tabel perantara agar membantu merapihkan hubungan. Relasi antara siswa dan kegiatan ekstrakurikuler dibuat tabel tambahan Siswa_Kegiatan. Tabel ini menghubungkan siswa dan kegiatan tanpa membuat semuanya kacau.
Contoh:
- Tabel Siswa: Informasi tentang siswa (Nama dan Nomor Siswa)
- Tabel Kegiatan: Informasi tentang kegiatan (Nama Kegiatan)
- Tabel Siswa_Kegiatan: Hubungan antara siswa dan kegiatan (Siapa yang ikut, Kegiatannya apa saja)
Siswa A bisa ikut Kegiatan Basket dan Kegiatan Musik dan Siswa B juga bisa ikut kegiatan Musik dan Kegiatan Drama
Alih-alih menulis semuanya di satu tempat, kita bisa buat tabel perantara agar mencatat siapa saja yang ikut dan kegiatannya apa. Agar lebih rapi dan lebih mudah dikelola.
