Macam-macam Relasi Tabel, Perbedaan Foregin Key dan Primary Key - MAKALAH SERBA ADA
Pemberitahuan! Website akan maintenance pada tanggal 28 - 30 Oktober 2023

Macam-macam Relasi Tabel, Perbedaan Foregin Key dan Primary Key

Berikut ini macam-macam dari Relasi Tabel

MakalahSerbaAda.Com - Halo sobat teknologi, jumpa kemabali dalam artikel makalahserbaada,com. kali ini saya akan menjelaskan dari macam-macam Relasi Tabel, Pengertian serta Perbedaan dari Foregin Key dan Primary Key. 

Anda pernah mendengar istilah dari apa itu Relasi Tabel dan juga Foregin Key serta Primary Key? Jika belum yuk simak penjelasanya sebagai berikut.

Pengertian Relasi

Secara umum. relasi adalah hubungan antara tabel yang mempresentasikan hubungan antar objek di dunia nyata. Relasi merupakan hubungan yang terjadi pada suatu tabel dengan lainnya yang mempresentasikan hubungan antar objek di dunia nyata dan berfungsi untuk mengatur mengatur operasi suatu database.

Jadi relasi merupakan penghubung antar tabel satu dengan tabel lainnya yang mana tabel tersebut memiliki data yang berhubungan di dunia nyata untuk mengatur operasi suatu database. Pada sebuah database, relasi dihubungkan dengan cara memberikan satu kolom dengan value yang sama dengan tabel yang berhubungan, ini disebut foreign key. Foreign key sendiri merupakan sebuah kolom yang hanya bisa menyimpan data yang sama dengan primary key yang berhubungan dengan tabel tersebut. Artinya foreign key hanya bisa diisi dengan data yang sudah ada pada primary key.

Lalu, apakah relasi memiliki banyak macam sehingga dalam artikel ini perlu saya jelaskan? Berikut akan saya jelaskan mengenai apasaja macam-macam Relasi Tabel yang perlu kita ketahui.

Relasi dapat mencakup 3 macam, di antaranya :

1. Relasi One to One 

Relasi One to One adalah relasi dimana setiap satu baris data pada tabel satu hanya berhubungan dengan satu baris data di tabel dua. Artinya masing - masing hanya memiliki satu hubungan saja. Biasanya relasi seperti ini digunakan pada relasi pengguna dan userlogin. Dimana satu pengguna hanya memiliki satu akun untuk login. dan satu akun login hanya dimiliki oleh pengguna.

Pada gambar dibawah ini adalah contoh relasi one to one. Dimana relasi tersebut terdapat pada tabel penjual dan tabel kota. Pada relasi tersebut, terdapat primary key id pada tabel kota yang berelasi dengan id.

2. Relasi One to Many

Relasi one to many adalah relasi yang mana setiap baris dari tabel pertama dapat dihubungkan dengan satu baris ataupun lebih dari tabel kedua. Artinya satu baris dari tabel pertama dapat mencangkup banyak data pada tabel kedua. Disini saya contohkan seperti table penjual dan table pembeli. 

Pada gambar dibawah ini, bisa dilihat bahwa pada tabel penjual memiliki primary key id yang mana primary key tersebut sebagai pembeda antara baris satu dengan baris lain. Sedangkan pada tabel produk terdapat satu primary key yaitu id dan terdapat foreign key id_penjual dari tabel produk. Karen foreign key pada tabel produk bukanlah primary key, artinya kita bisa menambah data yang sama dari foreign key tersebut asalkan data tersebut sama dengan data dari tabel penjual.

3. Relasi Many to Many

Relasi many to many adalah keadaan dimana satu baris dari tabel satu dapat berhubungan dengan tabel kedua. Dan satu baris dari tabel kedua dapat berhubungan dengan banyak baris dari tabel pertama. Artinya kedua tabel masing - masing dapat mengakses banyak data dari tiap tabel yang lain. Dalam hal ini, kita membutuhkan tabel ketiga sebagai perantara tabel satu dan tabel dua sebagai tempat untuk menyimpan foreign key dari masing - masing tabel. Disini saya memberikan contoh barang dan penjualan. Tentu saja setiap satu jenis barang bisa dijual berkali - kali. Dan satu penjualan bisa mencangkup banyak barang.

Pada gambar dibawah ini, terdapat tiga tabel. Yaitu tabel penjual, penjual_kategori, dan kategori. penjual dan kategori adalah dua tabel yang berelasi many to many. Akhirnya menghasilkan satu tabel yaitu tabel . Pada tabel penjual_kategori, tidak terdapat foreign key dari tabel penjual dan tabel kategori,
Didalam Relasi Tabel pastinya terdapat 2 hal penting sebagai kunci data yaitu Foreign Key dan juga Primary Key, adapun demikian saya akan menjelasakan apa itu Foregin Key, Primary Key serta penjelasan secara spesifik mengenai perbedaan dari kedua hal tersebut. Simak penjelasannya dibawah ini

Pengertian Foregin Key

Foreign key adalah pengenal unik atau kombinasi pengenal unik yang menghubungkan dua tabel atau lebih dalam database. Dari empat SQL database management system yang ada, relational database management system adalah yang paling populer. Saat memutuskan tabel mana dalam database relasional yang harus memiliki foreign key, kalian harus terlebih dahulu mengidentifikasi tabel mana yang merupakan subjek dan objek dalam hubungannya. Definisi tersebut juga berlaku dalam pengolahan relasional database. 

Kunci asing (Foreign Key) adalah sebuah atribut atau gabungan atribut yang terdapat dalam suatu tabel yang digunakan untuk menciptakan hubungan (relasi) antara dua tabel. Dalam relasional database, penggunaan foreign key merujuk pada suatu kunci primer yang terdapat pada tabel pertama atau dikenal juga dengan tabel master.

Pengertian Primary Key

Primary Key adalah tanda pengenal unik yang membedakan satu record dari yang lain. Oleh karena itu, setiap record dalam SQL database management system harus memiliki primary key. Tetapi ada beberapa aturan yang harus kalian ikuti ketika menentukan primary key untuk tabel:
  • Primary key harus berisi nilai unik. Jika primary key terdiri dari beberapa kolom, kombinasi value pada kolom ini harus unik.
  • Kolom primary key tidak boleh berisi nilai NULL. Ini berarti bahwa kalian harus mendeklarasikan kolom primary key dengan atribut NOT NULL. Jika tidak, MySQL akan memaksa kolom primary key sebagai NOT NULL secara implisit.
  • Sebuah tabel hanya memiliki satu primary key
Untuk menyertakan primary key dalam database management system menggunakan SQL, kalian cukup menambahkannya sebagai atribut normal saat membuat tabel baru. Jadi tabel pelanggan akan berisi empat atribut (atau kolom) :
  • ID Pemilik Mobil (yang akan menyimpan primary key)
  • Nama depan
  • Nama belakang
  • Nomor telepon
Sekarang setiap record pelanggan yang masuk ke database akan memiliki nomor identifikasi unik, serta nama depan, nama belakang, dan nomor telepon. Nomor telepon tidak cukup unik untuk dijadikan primary key, karena meskipun unik untuk satu orang pada satu waktu, seseorang dapat dengan mudah mengubah nomornya, artinya nomor itu bisa saja menjadi milik orang lain.

Berikut ini saya jelaskan lebih sepesifik terkait perbedaan antara Primary Key dan Foregin Key

A.Primary  Key

  1. Kunci utama mendefinisikan nilai tuple dalam sebuah tabel. Kunci utama juga dapat dikatakan sebagai atribut tunggal dalam tabel. Dengan begitu, nilai dari kunci utama tidak boleh berubah. Sebab, perubahan nilai pada primary key malah akan menciptakan kebingungan
  2. Hal yang menjadi perbedaan utama antara primary key dengan foreign key adalah nilai yang digunakan dalam primary key tidak boleh NULL. Maksudnya adalah record tersebut harus diisi dengan nilai (tidak boleh kosong). Jika nilai atribut primary key mengandung NULL, maka Anda tidak dapat mengidentifikasi record yang terdapat dalam tabel tersebut.
  3. Dalam primary key, Anda dapat membuat clustered index secara otomatis. Maksudnya Anda dapat mengurutkan data yang akan disimpan dalam database.
  4. Kunci utama merupakan kombinasi antara UNIQUE dan NOT NULL. Hal itu menyebabkan tidak adanya nilai duplikat yang boleh dimiliki kolom untuk didefinisikan sebagai kunci utama, terutama dalam mengolah relasional database.
  5. Anda dapat menambahkan nilai baru ke atribut primary key, walaupun kunci asing tidak memiliki nilai baru dalam kolomnya.
  6. Anda tidak dapat menghapus nilai dari primary key dari tabel pertama (parent). Untuk itu, Anda harus menghapus atribut yang disebut dengan foreign key di dalam tabel kedua atau child.

B.Foreign Key

  1. Foreign key merupakan suatu field dalam satu tabel yang digunakan untuk menghubungkan dua tabel. Dengan begitu, foreign key merujuk pada suatu kolom yang unik untuk mengidentifikasi baris dari satu tabel yang sama atau berbeda.
  2. Berbeda dengan primary key yang nilainya tidak boleh NULL. Foreign key dapat menerima nilai NULL. Oleh karena itu, foreign key tidak memiliki fungsi untuk mengidentifikasi record yang terdapat dalam tabel. Selain itu, foreign key juga dapat menerima nilai yang duplikat.
  3. Di dalam foreign key tidak terdapat clustered index. Namun, Anda dapat melakukannya dengan manual.
  4. Anda tidak dapat menambahkan nilai ke dalam foreign key, jika nilai tersebut tidak tersedia di kolom primary key. Sebab, syarat nilai dalam foreign key merupakan nilai rujukan dari kolom primary key.
  5. Anda dapat menghapus suatu nilai yang berasal dari kolom foreign key tanpa mengganggu record yang lain, dan juga tanpa harus mengetahui apakah nilai tersebut merupakan nilai yang dirujuk dari primary key atau tidak.
Nah sobat itulah tadi penjelasan mengenai Relasi Tabel, Pengertian serta Perbedaan dari Foregin Key dan juga Primary Key, Untuk itu sobat jika sudah membaca artikel saya harap berikan feedback kepuasan sobat berkunjung ke website saya, 1 feedback saja dari sobat sangat berarti bagi saya maka jangan sia-siakan kesempatan ini yah sobat. Untuk selanjutnya apa yang harus saya bahas dalam artikel, sobat bisa memberikan saran di kolom komentar yah, See youuu next timeee.....

Pilih opsi donasi!

BNI - Fauzia Ramadhan - (null)
Merasa terbantu dengan artikel ini? Ayo dukung dengan donasi. Klik tombol merah.
Author & Publisher of articles on the "Makalah Serba Ada" Website page

Post a Comment

Berikan Feedback Terbaik Untuk Artikel Ini
© ‧ MAKALAH SERBA ADA. All rights reserved. Developed by Jago Desain