Anda di halaman 1dari 13

Nama

: I Made Yudha Arya Dala

NIM

: 1504505040

Kelompok

: 15

MODUL I
Normalisasi
Tujuan
1.

Mampu menentukan key dengan tepat.

2.

Mampu memasangkan pasangan PK dan FK sesuai cardinality.

3.

Mampu melakukan normalisasi terhadap suatu sistem dengan benar.

Tugas Pendahuluan
1.

Sebutkan dan jelaskan dengan rinci tahapan-tahapan yang semestinya


dilakukan dalam pembuatan suatu program basis data.

2.

Sebutkan dan jelaskan dengan rinci tahapan-tahapan yang semestinya


dilakukan

dalam

proses

normalisasi,

berikan

contoh

untuk

menggambarkan proses yang terjadi disetiap tahapan normalisasi.


3.

Sebutkan macam-macam tipe data yang ada dalam MySQL serta


kebutuhan memory dan penggunaannya dengan jelas.

4.

Sebutkan kegunaan key dalam suatu tabel. Lalu sebutkan dan jelaskan
macam - macam key yang ada dalam konsep basisdata.

5.

Sebutkan dan jelaskan macam-macam relationship (keterhubungan) yang


ada dalam konsep basisdata.

Jawaban
1.

Tahapan- tahapan yang dilakukan dalam pembuatan suatu program basis


data :
a. Pengumpulan data dan analisa
Merupakan suatu tahap dimana kita melakukan proses indentifikasi
dan analisa kebutuhan-kebutuhan data dan ini disebut pengumpulan

data dan analisa. Untuk menentukan kebutuhan-kebutuhan suatu


sistem database, kita harus mengenal terlebih dahulu bagian-bagian
lain dari sistem informasi yang akan berinteraksi dengan sistem
database.
Berikut ini adalah aktifitas-aktifitas pengumpulan data dan analisa:
1) Menentukan kelompok pemakai dan bidang-bidang aplikasinya
2) Peninjauan dokumentasi yang ada
3) Analisa lingkungan operasi dan pemrosesan data
b. Perancangan database secara konseptual
Pada tahap ini akan dihasilkan conceptual schema untuk database
yang

tergantung pada sebuah DBMS yang

spesifik. Sering

menggunakan sebuah high-level data model seperti ER/EER model


selama tahap ini. Dalam conceptual schema, kita harus merinci
aplikasi-aplikasi database yang diketahui dan transaksi-transaksi yang
mungkin.Tahap perancangan database secara konseptual mempunyai 2
aktifitas pararel:
1) Perancangan skema konseptual
Menguji kebutuhan-kebutuhan data dari suatu database yang
merupakan hasil dari tahap 1 dan menghasilkan sebuah conceptual
database schema pada DBMS-independent model data tingkat
tinggi seperti EER (Enhanced Entity Relationship) model.Untuk
menghasilkan

skema

tersebut

dapat

dihasilkan

dengan

penggabungan bermacam-macam kebutuhan user dan secara


langsung membuat skema database atau dengan merancang skemaskema yang terpisah dari kebutuhan tiap-tiap user dan kemudian
menggabungkan

skema-skema

tersebut.

Model

data

yang

digunakan pada perancangan skema konseptual adalah DBMSindependent dan langkah selanjutnya adalah memilih DBMS untuk
melakukan rancangan tersebut.
2) Perancangan transaksi

Menguji

aplikasi-aplikasi

database

dimana

kebutuhan-

kebutuhannya telah dianalisa pada fase 1, dan menghasilkan


perincian transaksi-transaksi ini.Kegunaan tahap ini yang diproses
secara paralel bersama tahap perancangan skema konseptual adalah
untuk merancang karakteristik dari transaksi-transaksi database
yang telah diketahui pada suatu DBMS-independent. Transaksitransaksi ini akan digunakan untuk memproses dan memanipulasi
database suatu saat dimana database tersebut dilaksanakan.
c. Pemilihan DBMS
Pemilihan database ditentukan oleh beberapa faktor diantaranya faktor
teknik, ekonomi, dan politik organisasi.Contoh faktor teknik:
Keberadaan DBMS dalam menjalankan tugasnya seperti jenis-jenis
DBMS (relational, network, hierarchical, dan lain-lain), struktur
penyimpanan, dan jalur akses yang mendukung DBMS, pemakai, dan
lain-lain.Faktor-faktor ekonomi dan organisasi yang mempengaruhi
satu sama lain dalam pemilihan DBMS :
1) Struktur data
Jika data yang disimpan dalam database mengikuti struktur hirarki,
maka suatu jenis hirarki dari DBMS harus dipikirkan.
2) Personal

yang

telah

terbiasa

dengan

suatu

sistem

Jika staf programmer dalam suatu organisasi sudah terbiasa dengan


suatu DBMS, maka hal ini dapat mengurangi biaya latihan dan
waktu belajar.
3) Tersedianya layanan penjual
Keberadaan fasilitas pelayanan penjual sangat dibutuhkan untuk
membantu memecahkan beberapa masalah sistem.
d. Perancangan

database

secara

logika

(data

model

mapping)

Tahap selanjutnya adalah membuat sebuah skema konseptual dan


skema eksternal pada model data dari DBMS yang terpilih. Tahap ini
dilakukan oleh pemetaan skema konseptual dan skema eksternal yang
dihasilkan pada tahap 2. Pada tahap ini, skema konseptual
ditransformasikan dari model data tingkat tinggi yang digunakan pada

tahap 2 ke dalam model data dari model data dari DBMS yang dipilih
pada tahap 3.Pemetaan tersebut dapat diproses dalam 2 tingkat:
1) Pemetaan system-independent
Pemetaan

ke

dalam

model

data

DBMS

dengan

tidak

mempertimbangkan karakteristik atau hal-hal yang khusus yang


berlaku pada implementasi DBMS dari model data tersebut.
2) Penyesuain skema ke DBMS yang spesifik
Mengatur skema yang dihasilkan pada langkah 1 untuk disesuaikan
pada implementasi yang khusus di masa yang akan datang dari
suatu model data yang digunakan pada DBMS yang dipilih.Hasil
dari tahap ini memakai perintah-perintah DDL (Data Definition
Language) dalam bahasa DBMS yang dipilih yang menentukan
tingkat skema konseptual dan eksternal dari sistem database.
Tetapi 10 dalam beberapa hal, perintah-perintah DDL memasukkan
parameter-parameter rancangan fisik sehingga DDL yang lengkap
harus menunggu sampai tahap perancangan database secara fisik
telah lengkap.Tahap ini dapat dimulai setelah pemilihan sebuah
implementasi model data sambil menunggu DBMS yang spesifik
yang akan dipilih. Contoh: jika memutuskan untuk menggunakan
beberapa relational DBMS tetapi belum memutuskan suatu relasi
yang utama. Rancangan dari skema eksternal untuk aplikasiaplikasi yang spesifik seringkali sudah selesai selama proses ini.
e. Perancangan database secara fisik
Perancangan database secara fisik merupakan proses pemilihan
struktur-struktur penyimpanan dan jalur-jalur akses pada file-file
databaseuntuk mencapai penampilan yang terbaik pada bermacammacam aplikasi.Selama fase ini, dirancang spesifikasi-spesifikasi
untuk database yang disimpan yang berhubungan dengan strukturstruktur penyimpanan fisik, penempatan record dan jalur akses.
Berhubungan dengan internal schema (pada istilah 3 level arsitektur
DBMS).Beberapa petunjuk dalam pemilihan perancangan database
secara fisik :

1) Response time
Waktu yang telah berlalu dari suatu transaksi database yang
diajukan untuk menjalankan suatu tanggapan. Pengaruh utama
pada response time adalah di bawah pengawasan DBMS yaitu :
waktu akses database untuk data item yang ditunjuk oleh suatu
transaksi. Response time juga dipengaruhi oleh beberapa faktor
yang tidak berada di bawah pengawasan DBMS, seperti
penjadwalan sistem operasi atau penundaan komunikasi.
2) Space utility
Jumlah ruang penyimpanan yang digunakan oleh file-file database
dan struktur-struktur jalur akses.
3) Transaction throughput
Rata-rata jumlah transaksi yang dapat diproses per menit oleh
sistem database, dan merupakan parameter kritis dari sistem
transaksi (misal : digunakan pada pemesanan tempat di pesawat,
bank, dll). Hasil dari fase ini adalah penentual awal dari struktur
penyimpanan dan jalur akses untuk file-file database.
f. Implementasi Sistem database
Setelah perancangan secara logika dan secara fisik lengkap, kita dapat
melaksanakan sistem database. Perintah-perintah dalam DDL dan
SDL(Storage Definition Language) dari DBMS yang dipilih, dihimpun
dan digunakan untuk membuat skema database dan file-file database
(yang kosong). Sekarang database tersebut dimuat (disatukan) dengan
datanya.Jika data harus dirubah dari sistem komputer sebelumnya,
perubahan-perubahan yang rutin mungkin diperlukan untuk format
ulang datanya yang kemudian dimasukkan ke database yang baru.
Transaksi-transaksi database sekarang harus dilaksanakan oleh para
programmmer

aplikasi.Spesifikasi

secara

konseptual

diuji dan

dihubungkan dengan kode program dengan perintah-perintah dari


embedded DML yang telah ditulis dan diuji. Suatu saat transaksitransaksi tersebut telah siap dan data telah dimasukkan ke dalam

database, maka tahap perancangan dan implementasi telah selesai, dan


kemudian tahap operasional dari sistem database dimulai.
2.

Tahapan-tahapan yang semestinya dilakukan dalam proses normalisasi :


a. Bentuk Tidak Normal
Merupakan suatu table yang berisikan satu atau lebih grup yang
berulang.

Membuat

table

yang

unnormalized,

yaitu

dengan

memindahkan data dari sumber informasi.


Contoh :
NIK

Nama_Karyaw
an

Alamat

Kode_P
erusaha
an

Nama_Perus
ahaan

Kategori_
Perusaha
an

Deskripsi
_Kategori

NIK00
1

Wayan Gobyog

Jl.
Sumangka
No. 10

KP001

PT. Tipat Tahu

Perusahaan
Jasa

KP003

PT. Sate Siap

Perusahaan
Perdaganga
n

NIK00
2

Made Ninjik

Jl. Buluan
No. 21

KP002

PT. Lipi
Gadang

Perusahaan
Jasa

NIK00
3

Komang Kare

Jl.
Ceroring
No. 32

KP002

PT. Lipi
Gadang

Perusahaan
Jasa

NIK00
4

Ketut Bule

Jl. Kelagi
No. 60

KP003

PT. Sate Siap

Perusahaan
Perdaganga
n

NIK00
5

Putu Cenik

Jl.
Nyambu
No. 70

KP004

PT. Tukad
Dalem

Perusahaan
Perdaganga
n

KP001

PT. Tipat Tahu

Perusahaan
Jasa

Dari contoh table karwayan diatas terdapat group yang berulang dan
belum ada kolom yang menjadi primary key.
b. Bentuk Normal Pertama
Suatu tabel dikatakan dalam bentuk normal pertama (1NF) bila setiap
kolom bernilai tunggal untuk setiap baris.

Contoh :
NIK

Nama_Karyaw
an

Alamat

Kode_Pe
rusahaa

Nama_P
erusaha

Kategori_P
erusahaan

Deskrips
i_Katego

an

ri

NIK00
1

Wayan Gobyog

Jl. Sumangka
No. 10

KP001

PT. Tipat
Tahu

Perusahaan
Jasa

NIK00
1

Wayan Gobyog

Jl. Sumangka
No. 10

KP003

PT. Sate
Siap

Perusahaan
Perdagang
an

NIK00
2

Made Ninjik

Jl. Buluan No.


21

KP002

PT. Lipi
Gadang

Perusahaan
Jasa

NIK00
3

Komang Kare

Jl. Ceroring
No. 32

KP002

PT. Lipi
Gadang

Perusahaan
Jasa

NIK00
4

Ketut Bule

Jl. Kelagi No.


60

KP003

PT. Sate
Siap

Perusahaan
Perdagang
an

NIK00
5

Putu Cenik

Jl. Nyambu No.


70

KP004

PT. Tukad
Dalem

Perusahaan
Perdagang
an

NIK00
5

Putu Cenik

Jl. Nyambu No.


70

KP001

PT. Tipat
Tahu

Perusahaan
Jasa

Pada tabel diatas setiap kolom sudah bernilai tunggal untuk setiap
baris.
c. Bentuk Normal Kedua
Suatu tabel berada dalam bentuk normal kedua (2NF) jika tabel berada
dalam bentuk normal pertama, semua kolom bukan kunci primer
tergantung sepenuhnya terhadap kunci primer. Suatu kolom disebut
tergantung sepenuhnya terhadap kunci primer jika nilai pada suatu
kolom selalu bernilai sama untuk suatu nilai kunci primer yang sama.
Contoh:
1) Table Karyawan
NIK
NIK001
NIK002
NIK003
NIK004
NIK005

Nama_Karyawan
Wayan Gobyog
Made Ninjik
Komang Kare
Ketut Bule
Putu Cenik

Alamat
Jl. Sumangka No. 10
Jl. Buluan No. 21
Jl. Ceroring No. 32
Jl. Kelagi No. 60
Jl. Nyambu No. 70

2) Table Perusahaan
Kode
Perusahaan
KP001
KP002
KP003

Nama
Perusahaan
PT. Tipat Tahu
PT. Lipi Gadang
PT. Sate Siap

Kategori
Perusahaan
1
1
2

Deskripsi
Kategori
Perusahaan Jasa
Perusahaan Jasa
Perusahaan

KP004

PT. Tukad Dalem

Perdagangan
Perusahaan
Perdagangan

Pada tabel diatas terdapat 2 primary key yaitu NIK dan Kode
Perusahaan. Alasannya karena kolom lain lebih banyak bergantung
pada kolom NIK dan kolom Kode_Perusahaan.
d. Bentuk Normal Ketiga
Suatu tabel berada dalam bentuk normal ketiga (3NF) jika tabel berada
dalam bentuk normal kedua, setiap kolom bukan kunci primer tidak
memiliki ketergantungan secara transitif terhadap kunci primer.
Contoh :
3) Table Karyawan
NIK
Nama_Karyawan
NIK001 Wayan Gobyog
NIK002 Made Ninjik
NIK003 Komang Kare
NIK004 Ketut Bule
NIK005 Putu Cenik
4) Table Perusahaan
Kode_Perusahaan
KP001
KP002
KP003
KP004

Alamat
Jl. Sumangka No. 10
Jl. Buluan No. 21
Jl. Ceroring No. 32
Jl. Kelagi No. 60
Jl. Nyambu No. 70

Nama_Perusahaan
PT. Tipat Tahu
PT. Lipi Gadang
PT. Sate Siap
PT. Tukad Dalem

5) Table Kategori Perusahaan


Kategori_Perusahaan
Deskripsi_Kategori
1
Perusahaan Jasa
2
Perusahaan Perdagangan
Pada table perusahaan terdapat ketergantungan transitif tepatnya pada
kolom

Deskripsi_Perusahaan

yang

bergantung

pada

kolom

Kategori_Perusahaan. Solusinya adalah kita harus memecah table


perusahaan menjadi beberapa table.
3.

Macam-macam tipe data yang ada dalam MySQL ada 3 yaitu :


a. Tipe data untuk bilangan atau numeric

No

Tipe Data

1.

TINYINT

Keterangan
Ukuran 1 byte. Bilangan bulat terkecil, dengan jangkauan untuk

bilangan bertanda -128 sampai dengan 127 dan untuk yang tidak
bertanda 0 sampai dengan 255. Bilangan tak bertanda ditandai
dengan kata UNSIGNED
Ukuran 2 byte. Bilangan bulat dengan jangkauan untuk bilangan
2.

SMALLINT

bertanda -32768 sampai dengan 32767 dan untuk yang tidak


bertanda 0 sampai dengan 65535
Ukuran 3 byte. Bilangan bulat dengan

3.

MEDIUMINT

jangkauan untuk bilangan bertanda -8388608 sampai dengan


8388607 dan untuk
yang tidak bertanda 0 sampai dengan 16777215
Ukuran 4 byte. Bilangan bulat dengan jangkauan untuk bilangan

4.

INT

bertanda -2147483648 sampai dengan 2147483647 dan untuk


yang tidak bertanda 0 sampai dengan 4294967295

5.

INTEGER

Sama dengan INT.


Ukuran 8 byte. Bilangan bulat dengan jangkauan untuk bilangan

6.

BIGINT

bertanda -9223372036854775808 sampai dengan


9223372036854775807 dan untuk yang tidak bertanda 0 sampai
dengan 184467440737079551615

7.

FLOAT

Ukuran 4 byte. Biilangan pecahan.

8.

DOUBLE

Ukuran 8 byte. Bilangan pecahan.

DOUBLE

Ukuran 8 byte. Bilangan pecahan berpresisi ganda.

9.
10.

PRECISION
REAL

Ukuran 8 byte. Sinonim dari DOUBLE.


Ukuran M byte. Bilangan pecahan. Misalnya DECIMAL(5,2)

11. DECIMAL(M,D) dapat digunakan untuk menyimpan bilangan -99,99 sampai dengan
99,99
12. NUMERIC(M,D) Ukuran M byte. Sama dengan Decimal.
b. Tipe data untuk tanggal dan jam
No

Tipe Data

1.

DATETIME

2.

DATE

Keterangan
Ukuran 8 byte. Kombinasi tanggal dan jam dengan jangkauan dari
1000-01-01 00:00:00 sampai dengan 9999-12-31 23:59:59
Ukuran 8 byte. Kombinasi tanggal dan jam dengan jangkauan dari

1000-01-01 sampai dengan 9999-12-31


3.

TIMESTAMP

4.

TIME

5.

YEAR
c.

Ukuran 4 byte. Kombinasi tanggal dan jam dengan jangkauan dari


1970-01-01 sampai dengan 2037
Ukuran 3 byte.waktu dengan jangkauan dari -838:59:59 sampai
dengan 838:59:59
Ukuran 1 byte. Data tahun antara 1901 sampai dengan 2155

Tipe data untuk karakter atau string

No

Tipe Data

1.

CHAR(M)

2.

VARCHAR(M)

3.
4.
5.
6.

4.

Ukuran M byte, 1<=M<=255. Data string dengan panjang


yang tetap. CHAR(1) cukup ditulis dengan CHAR.
Ukuran L+1 byte dengan L<=M dan 1<=M<=255. Data
string dengan panjang bervariasi tergantung datanya.

TINYBLOB,

L+1 byte, dengan L<28 . Tipe TEXT atau BLOB dengan

TINYTEXT

panjang maksimum 255 karakter.

BLOB, TEXT

L+2 byte, dengan L<216 . Tipe TEXT atau BLOB dengan


panjang maksimum 65535 karakter.

MEDIUMBLOB,

L+3 byte, dengan L<224. Tipe TEXT atau BLOB dengan

MEDIUMTEXT

panjang maksimum 1677215 karakter.

LONGBLOB,

L+4 byte, dengan L<232. Tipe TEXT atau BLOB dengan

LONGTEXT

panjang maksimum 4294967295 karakter.

7. ENUM(nilai1,nilai2,..)
8.

Keterangan

SET(nilai1,nilai2,..)

Ukuran 1 atau 2 byte tergantungnilai enumerasinya maks


65535 nilai
Ukuran 1,2,3,4 atau 8 byte tergantung jumlah anggota
himpunan maks 64 anggota.

Kegunaan key adalah untuk mengindentifikasi atau membedakan antara


satu tabel dengan tabel lainya. Key yang digunakan memiliki fungsi
masing-masing dalam mengindentifikasi yang berbeda-beda.
Berikut ini macam-macam key dalam konsep basisdata :
a. Kunci Calon (Candidat Key)
Kunci calon adalah salah satu rangkaian yang mempunyai nilai unik
untuk membedakan atau mengidentifikasi nilai-nilai kombinasi yang

unik diantara semua kejadian yang spesifik dari enttitas. Kunici


calon ini tidak boleh berisi atribut dari tabel yang lain. kombinasi dari
atribut yang dapat digunakan untuk mengidentifikasi secara unik rekor
database tanpa data apapun yang asing. Setiap tabel dapat memiliki
satu atau lebih kunci calon.
b. Kunci Utama (Primary Key)
Kunci utama adalah atribut merupakan kunci calon yang telah dipilih
untuk mengidentifikasi setiap record secara unik. Kunci utama harus
merupakan atribut yang benar-benar unik dan tidak boleh ada nilai
NULL. Kunci utama adalah suatu nilai dalam basis data yang
digunakan untuk mengidentifikasi suatu baris dalam table. Salah satu
dari kunci calon dapat dipilih menjadi kunci utama dengan 3 kriteria
sbb:
1) Kunci tersebut lebih natural untuk dijadikan acuan
2) Kunci tersebut lebih sederhana
3) Kunci tersebut cukup unik
c. Kunci Alternatif (Alternate Key)
Kunci Alternatif adalah kunci alternatif yang tidak terpilih. Misal :
dalam suatu entitas terdapat dua atribut yang bisa dijadikan sebagai
kunci. Sementara yang boleh dijadikan kunci hanya satu, maka anda
harus memilih salah satu. Atribut yang dipilih, disebut kunci
utama. sedangkan atribut yang tidak dipilih disebut dengan kunci .
d. Kunci Tamu (Foreign Key)
Jika sebuah kunci utama terhubung ke tabel lain, maka keberadaan
kunci utama pada tersbut di sebut sebagai kunci tamu. Kunci
tamu adalah Sebuah kumpulan atribut dalam satu relasi yang
digunakan untuk merefer (menunjuk) ke suatu baris (tuple) pada
relasi yang lain (harus berkorespondensi dengan kunci utama pada
relasi yang kedua), seperti: logical pointer.
Sedangkan hubungan antara keduanya (kunci utama dan kunci tamu)
di jelaskan sebagai berikut:

1) Kunci utama adalah atribut kunci dari suatu tabel yang


menunjukkan bahwa atribut tersebut tidak bisa diisi dengan
data yang sama, atau dengan kata lain kunci utama menjadikan
setiap

record

memiliki

identitas

sendiri-sendiri

yang

membedakan satu sama lainnya (unik).


2) Kunci tamu adalah atribut yang melengkapi satu relationship
yang menunjukan ke induknya, dengan kata lain keduanya
saling berkaitan.
e. Kunci Komposit (Composite Key)
Dalam desain basisdata, kunci komposit adalah kunci yang terdiri dari
dua atau lebih atribut yang secara unik mengidentifikasi suatu kejadian
entitas.
f. Kunci Sekunder (Secondary Key)
Kunci sekunder adalah sebuah atribut atau kombinasi yang digunakan
hanya untuk tujuan pengambilan data.

5.

Macam-macam relationship (keterhubungan) yang ada dalam konsep


basisdata :
a. Relasi Satu ke Satu (One to One)
Artinya satu record pada entity A ber-relasi paling banyak satu record
juga pada entity B, begitu juga sebaliknya, satu record pada entity B,
ber-relasi paling banyak satu record juga dengan entity A. Dalam
diagram E-R, relasi ini disimbolkan dengan angka 1.
Contoh: Dalam proses belajar mengajar secara privat misalnya,
seorang (satu) tutor hanya mengajar satu siswa, begitu juga sebaliknya,
satu siswa hanya diajar oleh satu tutor.
1

1
tutor

meng
ajar

siswa

b. Relasi Satu ke Banyak (One to Many)


Artinya satu record pada entity A ber-relasi dengan beberapa record
pada entity B, tapi tidak sebaliknya, setiap record pada entity B ber-

relasi paling banyak satu record dengan entity A. Dalam diagram E-R,
relasi ini disimbolkan dengan angka 1 untuk menyatakan satu dan
huruf M atau N untuk menyatakan banyak.
Contoh : Dalam proses belajar mengajar di sekolah dasar misalnya,
satu orang guru mengajar beberapa (banyak) murid.
1
guru

M
murid

meng
ajar

c. Relasi Banyak ke Satu (Many to One)


Ini adalah kebalikan dari relasi satu ke banyak, dimana setiap record
pada entity A hanya dapat ber-relasi paling banyak 1 record pada entity
B, tapi tidak sebaliknya, satu record pada entity B dapat ber-relasi
dengan beberapa record pada entity A. Dalam diagram E-R, relasi ini
disimbolkan dengan angka 1 untuk menyatakan satu dan huruf M atau
N untuk menyatakan banyak.
Contoh : Dalam proses belajar mengajar di sekolah, dalam satu kelas
(beberapa murid) hanya di ajar oleh satu guru.
M

murid

1
guru

meng
ajar

d. Relasi Banyak ke Banyak (Many to Many)


Artinya beberapa record pada entity A dapat ber-relasi dengan
beberapa record juga pada entity B, begitu juga sebaliknya, beberapa
record pada entity B dapat ber-relasi dengan beberapa record juga pada
entity A. Dalam diagram E-R, relasi ini disimbolkan dengan huruf M
atau N untuk menyatakan banyak.
Contoh: Dalam hubungan antara mahasiswa dengan dosen pada
perguruan tinggi, yaitu seorang seorang dosen mengajar banyak
mahasiswa, sebaliknya seorang mahasiswa dapat diajar oleh beberapa
dosen, sehingga terjadi hubungan banyak ke banyak.
dosen

M
meng
ajar

mahasisw
a

Anda mungkin juga menyukai