Top Banner
Model Data Relasional Dr. Ema Utami, S.Si, M.Kom STMIK AMIKOM Yogyakarta
36

20151005 3 Model Relasional

May 16, 2023

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 20151005 3 Model Relasional

Model Data Relasional

Dr. Ema Utami, S.Si, M.Kom

STMIK AMIKOM Yogyakarta

Page 2: 20151005 3 Model Relasional

Model Data Relasional

Kompetensi Dasar: mengetahui konsep model data relasional

Indikator: 1. Mampu mendefinisikan model data

2. Mampu menjelaskan model data relasional

3. Mampu memberikan contoh penerapan pemodelan data relasional

Page 3: 20151005 3 Model Relasional

Model Data

Berfungsi untuk menggambarkan:

1. data

2. hubungan antardata

3. semantik / makna data

4. batasan data

dalam BD

Page 4: 20151005 3 Model Relasional

Model Relasional

Menggunakan model berupa kumpulan tabel

berdimensi dua utk merepresentasikan data &

relasi antar data-data tsb

Memakai kunci tamu (foreign key) sebagai

penghubung dengan tabel lain

Page 5: 20151005 3 Model Relasional

Komponen-Komponen

1. Basis Data Kumpulan data yang disusun secara

logis & disimpan dengan beberapa cara pengorganisasian.

Page 6: 20151005 3 Model Relasional

2. Tabel File terstruktur yg dpt menyimpan data

dgn tipe khusus.

Tabel dpt berisi daftar pelanggan, katalog produk, dll

Tabel bisa dikatakan daftar data terstruktur dgn tipe khusus.

Page 7: 20151005 3 Model Relasional

Data yang disimpan dalam tabel adalah satu tipe atau satu daftar.

Misal:

kita tidak akan menyimpan daftar pelanggan dan daftar pemesanan pada tabel yang sama.

Page 8: 20151005 3 Model Relasional

Setiap tabel dlm BD mempunyai nama yg menunjukkan isi tabel.

Nama tabel selalu unik, tidak ada tabel lain

dlm BD itu yg mempunyai nama sama.

Page 9: 20151005 3 Model Relasional

3. Kolom / Field

• Tabel tersusun dari beberapa kolom.

• Kolom berisi bagian dari informasi dalam tabel.

• Kolom adalah field tunggal dalam tabel.

• Semua tabel terdiri dari satu atau lebih kolom.

Page 10: 20151005 3 Model Relasional

Contoh dalam tabel Pelanggan

Misalnya berisi kolom-kolom:

1. kode_pelanggan

2. nama_pelanggan

3. nama_jalan

4. kode pos

5. telepon

Page 11: 20151005 3 Model Relasional

Sifat-sifat dari kolom/field

3.1. Bersifat sebagai kunci

• Setiap tabel mempunyai kunci

• Kunci adl kolom atau sekumpulan kolom yg nilai-nilainya secara unik mengidentifikasi setiap baris di dalam sebuah tabel.

Page 12: 20151005 3 Model Relasional

3.1A. Primary Key (Kunci Primer)

Digunakan untuk mencegah terjadinya pengisian data-

data yang diulang.

Artinya kita hanya bisa mengisi sebuah data saja

untuk field primary key.

Primary key juga berfungsi untuk dihubungkan dgn

tabel lainnya yang memiliki relasi.

Page 13: 20151005 3 Model Relasional

Contoh penentuan PK

• Tabel yang berisikan daftar pelanggan dapat menggunakan kolom kode_pelanggan

• Tabel yang berisikan daftar pemesanan dapat menggunakan kolom ID_pemesanan.

• Tabel daftar mahasiswa dapat menggunakan kolom NIM

Page 14: 20151005 3 Model Relasional

Syarat Primary Key

1. 2 baris tidak dapat memiiliki nilai kunci primer yang sama.

2. Setiap baris harus memiliki nilai primer (kolom tidak membolehkan nilai kosong (NULL)).

3. Nilai kunci primer tidak dapat digunakan kembali, jika baris tersebut sudah dihapus dari dalam tabel, kunci primernya tidak dapat diberikan kepada baris-baris berikutnya atau baris baru.

Page 15: 20151005 3 Model Relasional

• Setiap baris di dalam tabel dapat memiliki beberapa kolom / sekumpulan kolom yg mengidentifikasikan secara unik baris tersebut.

• Disebut KUNCI KOMPOSIT

Page 16: 20151005 3 Model Relasional

3.1B. Foreign Key

Foreign key dari sebuah tabel akan mereferensi / mengacu ke tabel yang lain sehingga kedua tabel tersebut saling berhubungan satu sama lain.

Page 17: 20151005 3 Model Relasional

Foreign key sering digunakan untuk menghindari adanya kesalahan dalam menginputkan data.

Misalnya jika seorang user menginputkan kode jurusan 10, padahal dalam database tidak ada kode tersebut maka kode tersebut akan ditolak.

Page 18: 20151005 3 Model Relasional

Foreign key juga berfungsi untuk mencegah terjadinya manipulasi data oleh pihak yang tidak bertanggung jawab.

Page 19: 20151005 3 Model Relasional

Integritas Referensial

• Opsi ketika suatu record pada tabel yg direferensi oleh suatu foreign key dihapus atau diganti.

[ ON DELETE { CASCADE | NO ACTION } ]

[ ON UPDATE { CASCADE | NO ACTION } ]

Page 20: 20151005 3 Model Relasional

ON DELETE

• merupakan tindakan apabila pada tabel yg direferensi terjadi penghapusan record.

Page 21: 20151005 3 Model Relasional

ON UPDATE

• merupakan tindakan apabila pada tabel yg direferensi mengalami perubahan nilai record.

Page 22: 20151005 3 Model Relasional

Tindakan yang dapat diatur pada ON DELETE maupun ON UPDATE ada dua yaitu

• CASCADE

• NO ACTION

Page 23: 20151005 3 Model Relasional

ON UPDATE Cascade

• merupakan tindakan apabila nilai primary key pada tabel yg direferensi diganti maka foreign key pada tabel yg mereferensi akan disamakan nilainya dengan primary key pada tabel yang direferensi,

Page 24: 20151005 3 Model Relasional

ON DELETE Cascade

• sedangkan apabila nilai primary key pada tabel yg direferensi dihapus maka semua record yg nilai foreign key-nya = primary key pada tabel yg direferensi dimana recordnya yg dihapus akan turut terhapus.

Page 25: 20151005 3 Model Relasional

ON UPDATE /ON DELETE NO ACTION

• merupakan tindakan bahwa apabila nilai primary key pada tabel yg direferensi = nilai foreign key pada tabel yg mereferensi maka perubahan atau penghapusan primary key pada tabel yg direferensi tidak dapat dilakukan,

Page 26: 20151005 3 Model Relasional

• tetapi apabila nilai primary key pada tabel yg direferensi tidak dijadikan nilai foreign key tabel yg mereferensi maka perubahan atau penghapusan primary key pada tabel yg direferensi dapat dilakukan.

Page 27: 20151005 3 Model Relasional

3.2. Unik

3.3. AutoIncrement

Ada field-field tertentu yg tidak perlu kita isi ttp

sistem akan mengisi data ke field tsb, misalnya

nomor_urut.

Page 28: 20151005 3 Model Relasional

3.4. Memiliki nilai default

Jika kita tidak mengisikan data ke field dalam tabel maka kita bisa memberikan nilai default kepada field tersebut.

Page 29: 20151005 3 Model Relasional

3.5. AutoCompute Ada kalanya kita memerlukan perhitungan misalnya kita memasukkan jumlah pembelian barang 9 sedangkan harga sebuah barang @ 2000 maka pada field total, misalnya, dapat terisi otomatis dengan menghitung total perkalian antara jumlah_pembelian dengan harga_pembelian tiap unitnya.

Page 30: 20151005 3 Model Relasional

3.6. NullAble

Data dlm sebuah field boleh dikosongkan.

Istilah dlm BD adalah NULL.

NULL tidak sama dengan nol.

Lawan dari NULL adalah NOT NULL.

Page 31: 20151005 3 Model Relasional

4. Tipe Data

Setiap kolom dlm tabel mempunyai tipe data terkait yg membatasi atau membolehkan data khusus di dalam kolom tersebut.

Page 32: 20151005 3 Model Relasional

5. Baris/Record/Row

• Kolom-kolom vertikal dalam tabel adalah atribut tabel

• Baris-baris horisontal dalam tabel adalah nilai data yg tersimpan pada setiap kolom tabel tsb

Page 33: 20151005 3 Model Relasional

Contoh : KHS

Page 34: 20151005 3 Model Relasional

A DB002 112

A DB001 112

B DB001 111

B PI001 110

A DB001 110

NILAI KODE_MK NO_MHS

Relasi atau

tabel

Sebuah baris

atau tuple

Atribut atau kolom

Kardinalitas

Domain

NILAI (A, B,

C, D, E)

Page 35: 20151005 3 Model Relasional

Beberapa sifat yg melekat dlm relasi

1. Tidak ada baris yang kembar

2. Urutan tupel tidak penting

3. Setiap atribut memiliki nama yg unik

4. Letak atribut bebas

5. Setiap atribut memiliki nilai tunggal & jenisnya

sama untuk semua baris

Page 36: 20151005 3 Model Relasional

Latihan

Sebuah perusahaan memiliki domain usaha jual beli barang.

Barang-barang yang diperjualbelikan dikelompokkan menjadi 2

yaitu buku dan majalah.

Setiap pelanggan dimungkinkan utk melakukan pembelian

beberapa barang.

Setiap barang mungkin dibeli oleh beberapa pelanggan.

Setiap barang hanya dibeli dari seorang distributor (penerbit).

Seorang distributor dimungkinkan menjual beberapa jenis barang

sekaligus.

Gambarkan kasus tsb dgn Model Relasional