Minggu, 01 November 2009

DIAGRAM E-R

Diposting oleh kamil |

Model data Entity-Relationship(E-R) dibangun berdasarkan persepsi dari dunia nyata yang mengandung himpunan dari objek-objek yang disebut entity dan hubungan antara objek-objek tersebut. Setiap objek bersifat unik. Hal ini tampak dari atribut-atribut yang dimilikinya.
Contoh : rekening mempunyai atribut Nomor dan Jumlah.
Contoh untuk relasi : Hubungan antara beberapa entitas seperti PELREK merupakan relasi yang menghubungkan pelanggan dengan setiap rekening yang dimilikinya.

contoh diagram E-R

- Persegi panjang mewakili himpunan entitas.
- Ellips mewakili atribut.
- Jajaran genjang mewakili relasi antar entitas.
- Garis penghubung antara entitas dengan relasi, maupun antara relasi dengan himpunan atributnya.


ENTITY dan ENTITY SET

Entity adalah objek yang eksis dan dapat dibedakan dari objek lainnya. Entity dapat konkrit (nyata) misalnya : manusia, buku atau dapat juga berbentuk abstrak misalnya : liburan, konsep, dsb.
Entity set adalah set dari entity-entity dengan tipe yang sama. Entity dapat saling lepas (disjoint).
Entity dapat digambarkan dengan himpunan dan atribut. Untuk beberapa atribut, ada himpunan dari nilai-nilai yang diinginkan yang disebut domain dari atribut tersebut.
Contoh : domain dari atribut Nomor adalah himpunan semua bilangan integer positif.
Model data merupakan kumpulan konsep-konsep yang berguna untuk menggambarkan data, hubungan data, semantik data dan data constraint.
Database mempunyai informasi yang berubah setiap saat dengan meng-insert atau men-delete informasi ke dalam database. Kumpulan dari informasi yang disimpan dalam database dalam suatu saat tertentu disebut Instant database. Hasil design dari database disebut skema database.


RELATIONSHIP dan RELATIONSHIP SET

Relationship adalah asosiasi di antara beberapa entity. Relationship set adalah himpunan dari relasi-relasi dengan tipe yang sama.
Secara formal, relationship set adalah relasi matematika dengan n * 2 entity set. Jika E1, E2, . . . , En adalah entity set, maka relationship set R adalah subset dari { e1, e2, . . . , en / e1 * E1, e2 * E2, . . . , en * En } dimana (e1, e2, . . . , en) adalah relationship.


PEMETAAN CONSTRAINT

Entity-Relationship (E-R) dari sebuah skema enterprise mendefinisikan batasan-batasan (constraint) tertentu sehingga isi dari database dapat sesuai. Salah satu batasan yang penting adalah pemetaan kardinalitas yang menggambarkan jumlah entitas dimana entitas yang lain dapat diasosiasikan melalui sebuah relasi.

Pemetaan kardinal mencakup salah satu dari :
* One-To-One.
Sebuah entity A diasosiasikan pada sebuah entity B, dan sebuah entity B diasosiasikan dengan paling banyak sebuah entity A.

* One-To-Many
Sebuah entity A diasosiasikan dengan sejumlah entity B, tetapi entity B dapat diasosiasikan paling banyak satu entity A.

* Many-To-One.
Suatu entity A dapat diasosiasikan dengan paling banyak sebuah entity B, tetapi entity B dapat diasosiasikan dengan sejumlah entity di A.

* Many-To-Many.
Suatu entity A dapat diasosiasikan dengan sejumlah entity B dan entity B dapat diasosiasikan dengan sejumlah entity di A.

PENYAJIAN ENTITY SET KUAT ( STRONG ENTITY SET )

Misal E adalah sebuah entity set kuat dengan atribut-atribut a1, a2, . . . , an. Kita sajikan entity ini dengan sebuah tabel yang disebut E dengan n kolom berbeda dimana masing-masing kolom berhubungan dengan sebuah dari atribut E. Setiap baris dalam tabel ini berhubungan dengan sebuah entity dari entity set E. Untuk menggambarkan ini, anggap entity set Account dari diagram E-R di bawah ini :

Gambar 1

Entity set ini mempunyai dua atribut : Account-Number dan Balance. Kita sajikan entity set ini dengan sebuah tabel yang disebut Account, dengan dua kolom seperti digambarkan di bawah ini :

Account-Number Balance
259 1000
630 2000
401 1500
700 1500
199 500
467 900
115 1200
183 1300
118 2000
225 2500
210 2200

Tabel Account

Baris ( 259,1000 ) dalam tabel Account berarti bahwa Account-Number 259 mempunyai balance sebesar $1000. Kita dapat menambahkan sebuah entity baru ke dalam database dengan menyisipkan sebuah baris ke dalam tabel. Kita dapat juga men-delete atau me-modifikasi baris.
Relationship set bukan biner dapat ditentukan dengan mudah dalam diagram E-R, seperti pada diagram berikut :

Gambar 2

Diagram E-R di atas berisi tiga entity set yaitu entity set Customer, entity set Account dan entity set Branch dihubungkan melalui relationship set CAB. Diagram ini menjelaskan bahwa customer mungkin memiliki beberapa Account pada masing-masing lokasi dalam cabang bank tertentu dan Account tersebut mungkin dimiliki oleh beberapa customer yang berbeda.

MEREDUKSI DIAGRAM E-R KE DALAM TABEL

Database yang disesuaikan ke diagram E-R dapat digambarkan dengan kumpulan tabel-tabel. Untuk setiap entity set dan untuk setiap relationship set dalam database, terdapat sebuah tabel yang unik yang diberi nama sesuai dengan entity set atau relationship set. Masing-masing tabel memiliki sejumlah kolom yang juga mempunyai nama yang unik.

PENYAJIAN ENTITY SET LEMAH ( WEAK ENTITY SET )

Misal A adalah sebuah weak entity set dengan atribut-atribut a1, a2, . . ., ar. Misal B adalah merupakan strong entity set dimana A bergantung. Misal primary key dari B berisi atribut-atribut b1, b2, . . . , bs. Kita sajikan entity set A dengan sebuah tabel yang disebut A dengan sebuah kolom untuk setiap atribut dari set.

{ a1, a2, . . . , ar } * { b1, b2, . . ., bs}

Untuk menggambarkan ini, perhatikan entity set Transaction dari diagram E-R pada gambar 1. Entity set ini mempunyai 3 atribut yakni Transaction-Number, Date dan Amount. Primary key dati entity set Account, dimana transaction bergantung adalah Account-Number. Sehingga transaction disajikan dengan sebuah tabel dengan kolom dengan Account-Number, Transaction-Number, Date dan Amount seperti tampak di bawah ini :
Account-Number Transaction-Number Date Amount
259 5 11 May 1985 +50
630 11 17 May 1985 +70
401 22 23 May 1985 -300
700 69 28 May 1985 -500
199 103 3 June 1985 +900
259 6 7 June 1985 -44
115 53 7 June 1985 +120
199 104 13 June 1985 -200
259 7 17 June 1985 -79

Tabel Transaction

0 komentar: