RELASIONSHIP PADA Ms. ACCESS
Cara Mudah Membuat relasi antar tabel di Ms Access
1.
Relationsip
Relasi ini dibutuhan berdasarkan desain tabel, dan dibuat
untuk mendukung integrasi data. Relasi juga menjamin agar perubahan data tidak
dapat dilakukan sembarang, tetapi berdasarkan ketentuan perancangan database
atau sesuai dengan aturan yang sebenarnya.
• Untuk mendefinisikan relationship, klik menu Database Tools dsn pilih Relationship
• Untuk mendefinisikan relationship, klik menu Database Tools dsn pilih Relationship
• Pada panel show tabel,
klik nama tabel dan klik add. Tambahkan tabel – tabel yang akan direlasikan.
Setelah semua tabel ditambahkan klik close.

• Klik field yang akan
direlasikan, misalnya dept_id pada t_dept dengan dept_id pad t_pegawai. Caranya
dengan menyorot file dept_id pada salah satu tabel, taham tombol mouse dan
tarik ke field dept_id pada tabel lain. Kemudian, pada panel Edit
Relationship, klik Enforce referential Intregity dan klik OK
• Perhatikan
Relationship Type “One To Many" otomatis didefinisikan oleh Microsoft
Access yang menunjukkan bahwa satu record pada tabel t_dept dapat berelasi dengan
banyak record pada tabel t_pegawai. Relasikan semua field yang berhubungan
sehingga dapat direlasi seperti gambar berikut:
• Setelah selesai klik
Close, pada kotak dialog menyimpan relasi, klik OK.
2. Enforce Referntial Integrity
• Isi tabel t_gaji dan t_pegawai masing – masing berikut
• Isi tabel t_gaji dan t_pegawai masing – masing berikut
• Ubahlah relasi agar
Enforce Referential Integrity tidak aktif, caranya dengan membuka panel
Database Tools – Relationship, klik garis relasi hingga menebal dan klik kanan,
pilih menu Edit Relationship. Hapus checklist pada Enforce Referential
Integrity dan klik OK.
Pada
gambar di atas, gol 8 dan 6 tidak sesuai dengan isi field gol pada table
t_gaji.
• Demikian juga misalnya jika ingin menghapus field gol=2 pada table t_gaji, yang sebenarnya masih diacu di table t_pegawai. Maka database juga akan mengijinkan proses penghapusan ini.
• Demikian juga misalnya jika ingin menghapus field gol=2 pada table t_gaji, yang sebenarnya masih diacu di table t_pegawai. Maka database juga akan mengijinkan proses penghapusan ini.
• Ubah kembali data
agar seperti semula (kembalikan data gol pada table t_pegawai agar sesuai
dengan data gol pada table t_gaji. Isikan kembali data gol=1 pada table
t_gaji). Tutup semua table dan ubah kembali relationship dengan cara seperti
sebelumnya, aktifkan kembali Enforce Referential Integrity. Ulangi proses di
atas. Jika kita mengubah isi field gol pada table t_pegawai dengan nilai yang
tidak sesuai dengan isi field gol pada table t_gaji, Microsoft Access akan
menolak perubahan tersebut.
• Jika kita ingin
menghapus data pada table t_gaji, yang masih diacu oleh data pada table
t_pegawai, Microsoft Access juga akan menolak.
3. Cascade Update dan Cascade Delete
• Pada Enforce Referential Integrity, terdapat dua pilihan yaitu Cascade Update Related fields dan Cascade Deleted Related Fields. Jika dipilih, maka jika satu field pada satu table yang saling berelasi diubah isi datanya atau dihapus, maka perubahan dan penghapusan ini akan otomatis diberlakukan ke semua table yang saling berhubungan dengan field tersebut. Misalkan opsi Cascade Update dan Cascade Delete diaktifkan pada relationship seperti pada gambar berikut.
• Pada Enforce Referential Integrity, terdapat dua pilihan yaitu Cascade Update Related fields dan Cascade Deleted Related Fields. Jika dipilih, maka jika satu field pada satu table yang saling berelasi diubah isi datanya atau dihapus, maka perubahan dan penghapusan ini akan otomatis diberlakukan ke semua table yang saling berhubungan dengan field tersebut. Misalkan opsi Cascade Update dan Cascade Delete diaktifkan pada relationship seperti pada gambar berikut.
• Coba anda ubah data
pada t_dept, misalnya, mengganti kode departemen ACCOUNTING, dari ACT menjadi
ACX. Perhatikan juga bahwa data pada t_pegawai untuk kode ACT akan otomatis
berubah menjadi ACX.
• Isi table t_pegawai
sebelum kode HRD
• Hapus dept_id =
“HRD" dari t_dept.
• Microsoft Access akan
menampilkan pesan bahwa penghapusan tersebut akan berdampak ke tabel lain yang
saling berelasi klik “YES".
• Isi table t_pegawai setelah kode HRD dihapus dari t_dept, jika t_pegawai
langsung dibuka tanpa ditutup terlebih dahulu.
• Isi table t_pegawai setelah ditutup dan dibuka kembali. Perhatikan bahwa
semua karyawan adengan dept_id = HRD ikut terhapus.
Latihan
Buatlah satu database baru simpan dengan nama dbhotel. Pada database tersebut buatlah beberapa table yang saling berelasi, dengan struktur sebagai berikut:
Buatlah satu database baru simpan dengan nama dbhotel. Pada database tersebut buatlah beberapa table yang saling berelasi, dengan struktur sebagai berikut:
Hasil Percobaan
T_kamar
T_Tamu
T_Menginap
T_Pesankamar
T_pesanfas
Relasikan table-table
tersebut sesuai dengan kesamaan field yang tersedia.
Hasil
percobaan
tugas database tentang relasi ↓↓
========================================================================






















Komentar
Posting Komentar