Anda di halaman 1dari 44

Entitas

Merupakan obyek yang mewakili sesuatu dalam dunia nyata dan dapat dibedakan antara satu dengan lainnya (unique). Memiliki atribut yang mendeskripsikan karakteristik dari objek tersebut. Dapat berupa: Fisik (mobil, rumah, manusia, pegawai dsb) Abstrak/konsep (department, pekerjaan, mata kuliah dsb)

Lambang entitas
Nama_entitas

Atribut
Merupakan karakteristik dari sebuah entitas Berfungsi untuk mendeskripsikan karakter entity atau relationship. Misal entity pegawai memiliki atribut nik, nama, alamat, nohp,dll

Atribut dilambangkan dengan bentuk elips

Entity

Atribut *noktp nama alamat tgl_lahir jeniskelamin status nohp foto

Contoh lain
Atribut *nomesin noplat model merk harga warna thn_pembuatan

Varian Entitas :
Strong Entity (entitas kuat) Entitas yg tidak memiliki ketergantungan dg entitas yang lain. Lambang :
Nama_entitas

Varian Entitas :
Weak Entity (entitas Lemah) Entitas yg keberadaannya ketergantungan pada entitas yang lain. Lambang :
tanggungan Entitas tanggungan disebut sebagai entitas lemah karena jika data seorang pegawai dihapus maka data tanggungannya juga akan terhapus. Keberadaan data tanggungan tergantung pada data di pegawai

Entitas kuat (Strong Entity)

Entitas Lemah (Weak Entity)

NIP

Nama

nama

status
Tanggungan

Pegawai

miliki

Jenis Atribut
Simple Attribute dan Composite Attribute Multi Valued Attribute Derived Attribute (Attribut Turunan) Key Attribute (Atribut Kunci)

Simple Attribute dan Composite Attribute


Atribut sederhana/ Simple Attribute : atribut yang tidak dapat dibagi-bagi menjadi atribut yang lebih mendasar. Contoh : atribut harga dari entity barang. Atribut komposit/ Composite Attribute : atribut yang terdiri dari beberapa atribut yang lebih mendasar. Contoh : Entity mahasiswa memiliki atribut nama yang terdiri dari nama depan (first name), nama tengah (middle name) dan nama belakang (last name).

Atribut Simple

idbarang Nama

BARANG

Kualitas

Harga

Atribut Composite

namatengah namadepan nama namabelakang

Tgl_lhr

PEGAWAI

Atribut Derived (Attribut Turunan), Atribut key, Atribut Multivalue


Atribut Derivatif : suatu atribut yang dihasilkan dari atribut lain. Contoh : atribut umur yang dapat dihasilkan dari atribut tgl_lahir. Atribut Key - atribut yang digunakan untuk membedakan data secara unik.misal nik, nim, no_peserta. Atribut Multivalue - atribut memiliki sekelompok nilai yang banyak, misal gelar, hobby.

Atribut Derivatif

agama umur Tgl_lhr

PEGAWAI

Atribut Key
nama alamatlengkap Id_pegawai

Tgl_lhr

PEGAWAI

nohp jk Gol_drh agama

idruang
RUANG

kapasitas

foto

Namaruang

lokasi

Atribut Multivalue

agama Gelar

Tgl_lhr

PEGAWAI

Simbol-simbol model relasional


Entity

Atribut Multivalue

Hubungan kuat

Atribut

Atribut Composite

Weak Entity

Hubungan lemah

Atribut Derivatif

Atribut key

Cardinality ( Kardinalitas )
Kardinalitas adalah hubungan diantara dua entitas Ada 4 bentuk kardinalitas : 1. Satu ke 1 ( 1 : 1 ) 2. Satu ke banyak (1 : M ) atau banyak ke satu (M: 1 ) 3. Banyak ke banyak ( M : N )

One to One
Hubungan satu ke satu. Contoh seorang Dosen memimpin satu jurusan.

NIP

Nama
1 1

Dosen

memimpin

Jurusan

Relasi dengan Relasi Derajat 1-1 (satu-ke-satu)

Kode dos

Nama_dos

Tabel Dosen
Kode_dos Nama_dos Alamat_dos

Dosen

Alamat_dos Kode_dos Tabel Jurusan


Kode_jur Namajur Kode_dos

mengepalai Kode_jur Jurusan Kode_jur Nama_jur

One to Many
Hubungan satu ke banyak. Contoh seorang dosen mengajar beberapa mata kuliah

NIP

Nama
1 Dosen

Kd_MK M

namaMK

ajar

Matakuliah

Relasi 1: M : Basis Data Perwalian


Tabel : WALI PK : KODE_WALI FK : -

Hubungan Tabel : SISWA PK : NOMHS FK : KODE_WALI

Many to Many
Hubungan banyak ke banyak. Contoh mahasiswa mengambil matakuliah.

Nim

Nama
M

Kd_mk N

Nm_mk

mahasiswa

ambil

Matakuliah

Relasi Many to Many Antara Siswa dan MKA

Tabel SISWA

Basis Data KRP

Tabel MK

Contoh Diagram ER
1 n Daftar Mahasiswa n ambil

Fakultas
1 miliki

n Dosen
1

m ajar n Mata Kuliah

Key
Key : Elemen Record yang dipakai untuk menemukan Record tersebut pada waktu akses Primary key Field yang mengidentifikasikan sebuah record dalam file Bersifat unik Primari Key
NIM 0222500250 0222300023 0144500024 NAMA TUTI WATI ALE UMUR 21 20 24

Foreign key : Field yang bukan key, tetapi adalah key

pada file yang lain.


KD_DOSEN D232 D453 D812 NAMA Warsono, Drs R. Faisal Tri Darmadi

Primary key

Foreign key

KD_MK N18 P25 K1A

MATAKULIAH MANAJEMEN PASCAL INTERNET

SKS 2 4 2

KD_DOSEN D231 D453 -

Normalisasi
Normalisasi merupakan sebuah teknik dalam logical desain sebuah basis data yang mengelompokkan atribut dari suatu relasi sehingga membentuk struktur relasi yang baik (tanpa redudansi). Tujuan : Minimalisasi redundansi (pengulangan data) Memudahkan identifikasi entitas Mencegah terjadinya anomali

Beberapa bentuk normal (normal forms, NF) : 1NF, 2NF, 3NF

Proses Normalisasi
Data diuraikan dalam bentuk tabel, selanjutnya dianalisis berdasarkan persyaratan tertentu ke beberapa tingkat. Apabila tabel yang diuji belum memenuhi persyaratan tertentu, maka tabel tersebut perlu dipecah menjadi beberapa tabel yang lebih sederhana sampai memenuhi bentuk yang optimal.

First Normal Form (1NF)


Suatu suatu tabel dikatakan memenuhi bentuk norml pertama jika : - semua attribute value-nya harus atomic (tidak boleh ada attribute yang composit / multivalue) - Tidak ada pengulangan atrubute

First Normal Form (1NF)


Tabel : Sales
IDSales ADN006 ADN007 ADN008 ADN009 ADN010 NamaSales Yeni, SE Memey Tina Ir. Yanto Made Telepon 3517261, 3520165 4744621,08122861427 08566241521 7265122, 7123910 6723192

non-atomic
Unnormalized Not 1NF
NamaSales Yeni, SE Yeni, SE Memey Memey Tina Ir. Yanto Ir. Yanto Made Telepon 3517261 3520165 4744621 08122861427 08566241521 7265122 7123910 6723192

1NF

IDSales ADN006 ADN006 ADN007 ADN007 ADN008 ADN009 ADN009 ADN010

First Normal Form (1NF)


Tabel : Buku
ISBN Thn_Terbit ID_Pengarang 12-1202-19222 1992 K0121 11-1090-29101 2001 K1021 11-1090-29102 2001 K2091 12-1201-90871 2002 K2092 13-2089-12910 2001 K2019

Unnormalized Not 1NF repeated

Nama_Pengarang Aris M Kosim P K Odelia Renaldi Samsuri J

ID_Pengarang Nama_Pengarang K1021 Kosim P K0121 K2091 Aris M K Odelia

ISBN Thn_Terbit ID_Pengarang 12-1202-19222 1992 K0121 12-1202-19222 1992 K1021 11-1090-29101 2001 K1021 11-1090-29102 2001 K2091 11-1090-29102 2001 K0121 12-1201-90871 2002 K2092 12-1201-90871 2002 K2091 13-2089-12910 2001 K2019

Nama_Pengarang Aris M Kosim P Kosim P K Odelia Aris M Renaldi K Odelia Samsuri J

1NF

Second Normal Form (2NF)

Suatu tabel memenuhi bentuk normal 2 ( 2 NF ) Jika : 1. jika tabel berada dalam bentuk Normal Pertama (1NF) 2. setiap atribut bukan kunci bergantung penuh pada kunci primer.

Syarat 2st Normal Form (2NF):


1. Memenuhi kriteria tabel Normal I (1NF) 2. Di dalam tabel tersebut tidak ada Redundansi / Pengulangan data dan Null Value. 3. Field-field yang bukan PK adalah Full Dependent ( bergantung penuh) pada PK

Second Normal Form (2NF)


Diketahui Workshop = (NIM,Modul,Biaya,Grade)

Peserta Workshop
NIM Modul Biaya Key : NIM+Modul Grade FD : Modul Biaya (Biaya ditentukan oleh Modul yang diambil mahasiswa)
Grade A A B A B 1NF

Tabel biaya peserta workshop


NIM P11.2004.0129 P11.2004.0130 P11.2004.0129 P11.2004.0201 P11.2004.0250 Modul VB.Net Prolog Prolog VB.Net Biaya 250000 100000 100000 250000

Not 2NF Sebab dalam tabel ini, Biaya tidak bergantung penuh pada atribut kunci (NIM,Modul)

Delphi 6 150000

Second Normal Form (2NF)


NIM Modul VB.Net Prolog Prolog Delphi 6 VB.Net Biaya 250000 100000 100000 150000 250000 Grade A A B A B Modul VB.Net Prolog Delphi 6 Biaya 250000 100000 150000 P11.2004.0129 P11.2004.0130 P11.2004.0129 P11.2004.0201 P11.2004.0250 Modul VB.Net Prolog Prolog Delphi 6 VB.Net Grade A A B A B

Workshop
NIM P11.2004.0129 P11.2004.0130 P11.2004.0129 P11.2004.0201 P11.2004.0250

Works1

More Better Then 1NF

Works2 35

Third Normal Form (3NF)

Suatu tabel memenuhi bentuk normal 3 (3 NF) jika berada dalam bentuk normal II (2NF) dan tidak dijumpai adanya ketergantungan transitif (Transitive Dependency). Kebergantungan Transitif (Transitive Dependency) adalah ketergantungan fungsional antara 2 (atau lebih) atribut bukan key (kunci).

Third Normal Form (3NF)


Misal diketahui struktur informasi dari suatu dokumen supplier :
S S1 Status City PQ P Qty 20 LONDON P1 300 P2 200 P3 400 P4 200 P5 100 P6 100 10 PARIS P1 300 P2 400 10 PARIS P2 200 20 LONDON P2 200 P4 399 P5 400

S2 S3 S4

Akan dibentuk suatu tabel dengan skema TPS=(S,Status,City,P,Qty) dengan (S,P) = primary key dan berlaku FD : SStatus SCity CityStatus Lakukan normalisasi dari 1NF hingga 3NF.

37

Third Normal Form (3NF)


TPS
S Status City P Qty S1 20 LONDON P1 300 S1 20 LONDON P2 200 S1 20 LONDON P3 400 S1 20 LONDON P4 200 S1 20 LONDON P5 100 S1 20 LONDON P6 100 S2 10 PARIS P1 300 S2 10 PARIS P2 400 S3 10 PARIS P2 200 S4 20 LONDON P2 200 S4 20 LONDON P4 399 S4 20 LONDON P5 400

1NF Not 2NF


Problem : Redundansi inconsistency low speed process Anomaly : S(Status,City) tapi kita tidak bisa insert data (S5,30,JAKARTA) tanpa diikuti data P (khususnya) dan Q. Menghapus 1 baris data akan jg merusak keutuhan informasi. Solusi : Dekomposisi menjadi : TPS1 dan TPS2

38

Third Normal Form (3NF)


TPS1
S Status City S1 20 LONDON S2 10 PARIS S3 10 PARIS S4 20 LONDON

1NF 2NF Not 3NF (trans.) SCity CityStatus

TPS2
S S1 S1 S1 S1 S1 S1 S2 S2 S3 S4 S4 S4 P P1 P2 P3 P4 P5 P6 P1 P2 P2 P2 P4 P5 Qty 300 200 400 200 100 100 300 400 200 200 399 400

Sekarang kita dapat menambah data (S5,30,JAKARTA) dgn aman Tapi masih ada anomaly : Karena CityStatus maka kita tidak bisa entry data City baru sebelum Status punya nilai. Penghapusan 1 baris sebagian data City juga bisa merusak keutuhan informasi S. Selain itu, masih ada redundansi pada Status dan City

1NF 2NF 3NF redundansi partial not potensial better then previous redundant We may not eliminate all redundant but we make its minimize

39

Third Normal Form (3NF)


TPS1-1 City LONDON PARIS PARIS LONDON TPS1-2 City Status LONDON 20 PARIS 10 1NF 2NF 3NF TPS2 P Qty 1NF 2NF P1 300 3NF P2 200 P3 400 P4 200 P5 100 P6 100 P1 300 P2 400 P2 200 P2 200 P4 399 P5 400 40

S S1 S2 S3 S4

1NF 2NF 3NF

S S1 S1 S1 S1 S1 S1 S2 S2 S3 S4 S4 S4

ANOMALI

Kamus besar bahasa indonesia : Anomali berarti ketidak normalan, penyimpangan dari normal, Anomali dalam database merupakan efek samping yang tidak diharapkan yang ditimbulkan dari proses pada database Untuk dinormalkan harus dilakukan normalisasi data Contoh efek samping adalah sebagai berikut : 1. Ketidak-konsistenan data. 2. Adanya kehilangan data akibat dari penghapusan data lain. Anomali basis data terdiri dari 3 komponen : 1. Anomali peremajaan (Update). 2. Anomali Penghapusan (Delete). 3. Anomali penyisipan (Insert).

Contoh : Relasi KRS ( Kartu Rencana Studi ) Mahasiswa


Ada 8 atribut : NIM, Nama MHS, Kode Mata Kuliah, Nama Mata Kuliah jumlah SKS, Semester, Tahun, Status ambil.
NIM Nama MHS Tukul Peppy Vega Dian Tukul Peppy Vega Dian Kode MatKul mkb023 mkb023 mkb023 mkb023 ssk027 ssk027 ssk027 ssk027 Mata Kuliah RPL RPL RPL RPL JarKom JarKom JarKom JarKom SK S 8 8 8 8 6 6 6 6 SMT Tahun Tahun Ambil Baru Ulang Baru Baru Baru Ulang Baru Baru

K002 K003 K004 K005 K002 K003 K004 K005

4 4 4 4 4 4 4 4

2002 2002 2002 2002 2002 2002 2002 2002

a.

Anomali Peremajaan (Update)


Disebabkan oleh perubahan pada sejumlah data yang sia-sia pada sebuah tabel tetapi tidak seluruhnya berubah. Contoh : Pada tabel relasi KRS mahasiswa, dapat terjadi anomali Update apabila nama mata kuliah RPL diubah menjadi Pancasila, dan perubahan hanya dilakukan pada record pertama saja dan tidak pada record kedua, ketiga, & keempat, hal ini berakibat adanya ketidakkonsistenan.

b. Anomali Penyisipan (insert)


Anomali ini terjadi apabila pada saat penambahan hendak dilakukan, ternyata ada elemen data yang masih kosong dan ternyata elemen data itu adalah primary key.

GASAL 2007/2008

GASAL 2007/2008

PENGANTAR SISTEM BASIS DATA (KP123)

PENGANTAR SISTEM BASIS DATA (KP123)

Contoh :
Pada relasi KRS itu terjadi anomali penyisipan, apabila seorang Mahasiswa mengambil beberapa mata kuliah untuk satu semester dan tahun akademik tertentu. Masalahnya bagaimana menyimpan fakta bahwa ada satu mata kuliah baru yang tidak diambil oleh mahasiswa ? Penyisipan tidak bisa dilakukan karena tidak ada informasi mahasiswa yang mengambil mata kuliah tersebut.

C.

Anomali Penghapusan ( Delete )


Anomali ini terjadi apabila data pada record ke satu dihapus, maka seluruh data yang ada pada record itu akan terhapus semua, padahal data itu masih dibutuhkan.

GASAL 2007/2008

GASAL 2007/2008

PENGANTAR SISTEM BASIS DATA (KP123)

PENGANTAR SISTEM BASIS DATA (KP123)