Wednesday, May 15, 2019

Relasi Basis Data

  • Pengertian Relasi Basis Data

Relasi adalah hubungan antara tabel yang mempresentasikan hubungan antar objek di dunia nyata. Relasi merupakan hubungan yang terjadi pada suatu tabel dengan tabel lainnya yang mempresentasikan hubungan antar objek di dunia nyata dan berfungsi untuk mengatur mengatur operasi suatu database. Basis data adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut. Relasi basis data adalah sekumpulan hubungan informasi data yang terjadi pada suatu tabel dengan tabel yang lainnya yang mempresentasikan hubungan didunia nyata.
  • Sifat-sifat Relasi 
Untuk dapat membuat model relasi, perlu dipahami sifat-sifat yang dimiliki oleh relasi. Dengan adanya sifat relasi, penggambaran model relasi akan lebih mudah. Menurut Connolly dan Begg, (2010, p.148-149) relasi mempunyai sifat-sifat sebagai berikut :

1. Relasi memiliki nama yang berbeda satu sama lain dalam skema relasional 
2. Setiap sel dari relasi memiliki satu nilai atomik
3. Setiap atribut memiliki nama yang berbeda 
4. Nilai satu atribut berasal daru domain yang sama 
5. Setiap tuple pasti berbeda, dan tidak ada duplikasi tuple 
6. Urutan atribut tidak memiliki makna 
7. Urutan tuple tidak mempunyai makna, secara teoritis 


  • Tipe Relasi

Tipe relasi merupakan tipe hubungan antara satu entitas dengan entitas lainnya. Relasi akan membantu untuk memahami bagaimana entitas saling terkait satu sama lain. Hal ini juga dinyatakan oleh Connolly dan Begg, (2010, p.374) tipe relasi adalah satu asosiasi antara satu atau lebih tipe entitas yagn berpartisipasi. Tipe relasi dapat dibagi menjadi 2, menurut Connolly dan Begg (2010, p.374-375) ialah: 

• Relationship type Merupakan satu rangkaian asosiasi yang menjelaskan satu atau lebih jenis entitas yang berpartisipasi. 

• Relationship occurrence Suatu hubungan yang unik dimana dapat diidentifikasi dengan melihat satu kejadian dari setiap jenis entitas yang berpartisipasi.


  • Jenis - Jenis Relasi :



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.

contoh relasi one to one
Pada gambar diatas adalah contoh relasi one to one. Dimana relasi tersebut terdapat pada tabel pengguna dan tabel login_pengguna. Dimana pengguna hanya memiliki satu akun login_pengguna. Dan satu akun login hanya untuk satu pengguna saja. Pada relasi tersebut, terdapat primary key id_pengguna pada tabel pengguna yang berelasi dengan id_pengguna.Pada tabel login_pengguna, id_pengguna adalah primary key sekaligus foreign key dari tabel pengguna. Hal itu karena primary key merupakan kolom spesial dimana tiap baris memiliki isi dari primary key yang berbeda - beda. Sedangkan foreign key merupakan penghubung antara tabel satu dan tabel dua. Dan foreign key harus sama isinya dengan primary key dari tabel pengguna.  Dengan kata lain, id_pengguna dari tabel login pengguna harus sama isinya dengan id_pengguna dari tabel pengguna dan id_pengguna pada login_pengguna tidak bisa menyimpan data yang sama lebih dari satu kali.


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.



Model Relasional Basis Data :

Model Relasional adalah model yang menggunakan sejumlah tabel untuk menggambarkan data serta hubungan antara data-data tersebut.
Contoh relasi one to many

Pada gambar diatas, kita bisa lihat bahwa pada tabel dosen memiliki primary key id_dosen yang mana primary key tersebut sebagai pembeda antara baris satu dengan baris lain. Sedangkan pada tabel matkul terdapat satu primary key yaitu id_matkul dan terdapat foreign key id_dosen dari tabel dosen. Karen foreign key pada tabel matkul bukanlah primary key, artinya kita bisa menambah data yang sama dari foreign key tersebut asalkan data tersebut sama dengan data dari tabel dosen.

Pada kasus one to many ini. Kita perlu untuk memberikan akses pada satu tabel kuat dimata satu tabel tersebut haruslah terisi terlebih dahulu agar data pada tabel kedua bisa menyesuaikan data dari tabel pertama. Contohnya relasi tabel diatas. Jika tidak ada dosen, maka tidak ada matkul yang diampu. Sedangkan jika matkul tidak ada, dosen bisa mengampu mata kuliah yang lain.

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.
Contoh relasi many to many

Pada gambar diatas, terdapat tiga tabel. Yaitu tabel penjualan, barang, dan detail_penjualan. Barang dan penjualan adalah dua tabel yang berelasi many to many. Akhirnya menghasilkan satu tabel yaitu tabel detail_penjualan. Pada tabel detail_penjualan, terdapat foreign key dari tabel penjualan dan tabel barang namu tidak terdapat primary key karena pada tabel ini tidak dibutuhkan primary key. Sehingga data yang terdapat pada tabel detail_penjualan ini sangat bergantung pada tabel barang dan penjualan.

Untuk kasis many to many, kita membutuhkan tabel ketiga sebagai tempat penyimpanan foreign key karena foreign key tersebut bisa menyimpan data yang sama berkali - kali. Artinya pada tabel detail penjualan dapat menyimpan id_penjualan yang sama berkali - kali dan id_barang yang sama berkali - kali juga. Dengan begitu kedua relasi tersebut bisa berhubungan berkali - kali tanpa perlu repot - repot.

  • Struktur dasar Model Relasional Basis data: 

1. RDBMS memungkinkan beroperasi pada lingkungan logika manusia. 
2. Basis data relasional dianggap sebagai suatu kumpulan tabel-tabel. 
3. Setiap tabel terdiri dari serangkaian perpotongan baris/kolom. 
4. Tabel-tabel (atau relasi) terhubung satu dengan lainnya menggunakan entitas tertentu yang digunakan secara bersama. 
5. Tipe hubungan seringkali ditunjukkan dalam suatu skema.
6. Setiap tabel menghasilkan data yang lengkap dan kebebasan struktural.

  • Keuntungan dan Kerugian Dalam Menggunakan Model Relasional Basis Data :
Keuntungan :

1. Kebebasan struktural 
2. Secara konseptual jauh lebih sederhana 
3. Perancangan, implementasi, manajemen dan penggunaan basis data lebih mudah 
4. kemampuan khusus untuk queri (SQL) 
5  Sistem manajemen basis data lebih baik

Kerugian : 

1. Biaya perangkat keras dan perangkat lunak sistem menjadi hal pokok 
2. Kemungkinan perancangan dan implementasi yang buruk 
3. Masalah “informasi yang tesebar” sangat potensial

No comments:

Post a Comment