Anda di halaman 1dari 13

Forward Engineering

Fitur Forward Engineering memungkinkan pembuatan fisik database berdasarkan model ERD yang dibuat
sebelumnya di dalam MySQL Workbench.

Di dalam contoh berikut ini, kita akan melakukan Forward Engineering untuk membuat database
berdasarkan ERD berikut ini:

NIM

NAMA NAMA

Dosen Membimbing (PA) Mahasiswa

NIP JK

BIDANG_ILMU

Langkah-langkah Forward Engineering:

1. Login ke MySQL Workbench:


2. Berdasarkan ERD yang dibuat, buatlah Enhanced Entity Relationship (EER) Diagram di dalam
MySQL Workbench dengan cara memilih menu: File  New Model

3. Tambahkan tabel yang diperlukan, yakni tabel “Dosen” dan tabel “Mahasiswa”
Setelah memasukkan atribut dan nama tabel, klik Close (tidak ada tombol ‘OK’).
Tambahkan tabel baru untuk tabel “Mahasiswa”.

4. Setelah semua tabel dibuat, lalu buatlah Entity Relationaship dengan meng-klik pada Add Diagram
5. Tambahkan tabel-tabel pada Diagram

6. Sebelum kita melakukan relasi, perhatikan beberapa constraint berdasarkan ERD yang telah
dibuat:
a. Dosen membimbing Mahasiswa (Partial Participation): Partial Participation karena dalam
kasus ini, tidak semua Dosen membimbing Mahasiswa
b. Mahasiswa dibimbing Dosen (Full Participation): Full Participation karena dalam kasus ini,
semua Mahasiswa tanpa terkecuali haruslah dibimbing oleh seorang Dosen

Tutorial mengenai Partial/Full Participation dapat dilihat pada:

http://www.vertabelo.com/blog/technical-articles/chen-erd-notation

c. Asumsikan bahwa, seorang Dosen dapat membimbing lebih dari satu Mahasiswa dan seorang
Mahasiswa dapat dibimbing oleh lebih dari satu Dosen. Sehingga relasi yang kita butuhkan
dalam Diagram adalah Many-to-Many (M:N)

Untuk itu, pada Diagram yang dibuat di MySQL Workbench, buat relasi dengan melakukan klik
pada pilihan many-to-many (M:N) atau (N:M) sebagai berikut.
Kemudian, klik pada tabel “Dosen” dilanjutkan dengan klik pada tabel “Mahasiswa”:
Karena relasi yang dipilih adalah M:N, secara otomatis tabel baru akan ditambahkan sebagai
berikut:

7. Tetapi pada hasil diatas, dapat dilihat bahwa relasi tabel “Dosen” dengan tabel
“Dosen_has_Mahasiswa” adalah relasi 1:N, yang mana seorang Dosen minimal membimbing satu
Mahasiswa. Ini dapat diketahui dari symbol:

Padahal yang kita butuhkan adalah: Tidak semua Dosen membimbing Mahasiswa (ada Dosen yang
tidak membimbing Mahasiswa)

Untuk melakukan modifikasi pada relasi tersebut, klik Kanan pada relasi tersebut lalu pilih Edit
Relationship, sebagai berikut:

Pada jendela yang ditampilkan, pilihlah pada tab: Foreign Key

Kosongkan pilihan “Mandatory” pada tabel “Dosen_has_Mahasiswa” sebagai berikut:


Setelah itu, tutup jendela Relationship dan akan didapatkan hasil sebagai berikut:

Untuk relasi tabel “Mahasiswa” dengan tabel “Dosen_has_Mahasiswa” tidak diperlukan


perubahan, karena semua mahasiswa memang harus dibimbing Dosen, tanpa terkecuali.

8. Setelah relasi dibuat dan dirasa benar, jendela EER Diagram dapat ditutup dan simpan model
dengan meng-klik menu File  Save Model. Beri nama misalnya: “FE_TEST_MODEL”, lalu klik
Save.
9. Langkah selanjutnya adalah melakukan Forward Engineering. Klik pada menu Database 
Forward Engineer
Seperti terlihat dalam Script yang dihasilkan, nama database yang akan dibuat adalah “mydb”.
Anda dapat meng-copy nya ke dalam Clipboard lalu melakukan Find-Replace pada sebuah Text
Editor, lalu Paste kembali ke dalam jendela tersebut.

Atau, biarkan nama “mydb”, kita dapat melakukan perubahan nama database setelahnya.

Simpan Script untuk arsip Anda dengan cara klik pada tombol Copy to Clipboard, lalu Paste pada
document text dan beri nama dengan extension *.sql.

10. Setelah itu, klik pada tombol Next sampai database berhasil dibuat.

11. Terlihat di dalam jendela Navigator, Anda akan menemukan bahwa sebuah database dengan
nama “mydb” telah berhasil dibuat:
Anda dapat melakukan Rename, dengan meng-klik pada menu Alter Schema dan menjadikannya
sebagai Default Scema (sehingga semua query yang anda jalankan di SQL Editor akan otomatis
menggunakan Schema tersebut) dengan memilih menu Set as Default Schema.

12. Untuk melakukan pengecekan constraint, Anda dapat mengisi tabel-tabel tersebut dengan data
sebagai berikut:
Lakukan DELETE pada tabel “mahasiswa”, tanpa melakukan DELETE pada tabel
“Dosen_has_Mahasiswa” sebagai berikut:

Akan ada Error Message yang mengindikasikan bahwa data tersebut tidak dapat dihapus karena
ada FOREIGN KEY CONSTRAINTS.

Anda mungkin juga menyukai