Panduan tentang hubungan tabel
Applies ToAccess untuk Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Salah satu tujuan desain database yang bagus adalah menghapus kelebihan data (data duplikat). Untuk mencapai tujuan itu, Anda membagi data menjadi banyak tabel berbasis subjek sehingga tiap fakta diwakili hanya sekali. Anda lalu menyediakan sebuah cara bagi Access untuk menyatukan kembali informasi yang terbagi — Anda melakukan ini dengan menempatkan bidang umum dalam tabel yang berkaitan. Tetapi, untuk melakukan langkah ini dengan benar, Anda harus memahami hubungan antar tabel Anda, lalu tentukan hubungan tersebut dalam database Anda.

Di artikel ini

Pengenalan

Setelah Anda sudah membuat tabel untuk tiap subjek di database Anda, Anda harus memberi Access sebuah cara untuk menyatukan informasi itu kembali lagi saat diperlukan. Anda melakukan ini dengan menempatkan bidang umum dalam tabel yang berkaitan, dan dengan menetapkan hubungan antar tabel Anda. Anda lalu bisa membuat kueri, formulir, dan laporan yang menampilkan informasi dari beberapa tabel sekaligus. Misalnya, formulir yang diperlihatkan di sini berisi informasi yang berasal dari beberapa tabel:

Formulir Pesanan menampilkan informasi terkait dari lima tabel sekaligus

1. Informasi di formulir ini berasal dari tabel Pelanggan...

2. ...tabel Pesanan...

3. ...tabel Produk...

4. ...dan tabel Detail Pesanan.

Nama pelanggan dalam kotak Tagih Ke berasal dari tabel Pelanggan, nilai ID Pesanan dan Tanggal Pesanan berasal dari tabel Pesanan, nama Produk berasal dari tabel Produk, dan nilai Harga Satuan dan Kuantitas berasal dari tabel Detail Pesanan. Tabel tersebut saling terkait dalam berbagai cara untuk memasukkan informasi dari tiap tabel ke dalam formulir tersebut.

Dalam contoh sebelumnya, bidang dalam tabel harus dikoordinasikan sehingga memperlihatkan informasi tentang urutan yang sama. Koordinasi ini dicapai dengan menggunakan hubungan tabel. Hubungan tabel berfungsi dengan mencocokkan data dalam bidang kunci — seringkali bidang dengan nama sama di kedua tabel. Dalam sebagian besar kasus, bidang yang cocok tersebut adalah kunci utama dari satu tabel, yang menyediakan pengidentifikasi unik untuk tiap rekaman, dan kunci asing di tabel lainnya. Misalnya, karyawan bisa dikaitkan dengan pesanan yang menjadi tanggung jawab mereka dengan membuat hubungan tabel antara bidang IDKaryawan di tabel Karyawan dan Pesanan.

IDKaryawan digunakan sebagai kunci utama dalam tabel Karyawan dan kunci asing dalam tabel Pesanan.

1. IDKaryawan muncul di kedua tabel — sebagai kunci utama ...

2. ... dan sebagai kunci asing.

Atas Halaman

Tipe hubungan tabel

Terdapat tiga tipe hubungan tabel di Access.

  • Hubungan satu ke banyak

    Mari gunakan database pelacakan pesanan yang berisi tabel Pelanggan dan tabel Pesanan sebagai contoh. Seorang pelanggan bisa memesan dalam jumlah berapa pun. Maka untuk setiap pelanggan dinyatakan dalam tabel Pelanggan, mungkin ada banyak pesanan yang dinyatakan di tabel Pesanan. Hubungan antara tabel Pelanggan dan tabel Pesanan adalah hubungan satu ke banyak.

    Untuk menyatakan hubungan satu ke banyak dalam desain database Anda, ambil kunci utama di sisi "satu" dari hubungan tersebut dan tambahkan sebagai bidang atau bidang-bidang tambahan ke tabel di sisi "banyak" dari hubungan tersebut. Dalam kasus ini, misalnya, Anda menambahkan bidang baru — bidang ID dari tabel Pelanggan — ke tabel Pesanan dan menamainya ID Pelanggan. Access lalu bisa menggunakan nomor ID Pelanggan dalam tabel Pesanan untuk menemukan pelanggan yang tepat untuk tiap pesanan.

  • Hubungan banyak ke banyak

    Sekarang mari lihat hubungan antara tabel Produk dan tabel Pesanan. Sebuah pesanan bisa berisi lebih dari satu produk. Di sisi lain, sebuah produk bisa muncul di banyak pesanan. Karena itu, untuk tiap rekaman dalam tabel Pesanan, bisa terdapat banyak rekaman dalam tabel Produk. Selain itu, untuk tiap rekaman dalam tabel Produk, bisa terdapat banyak rekaman dalam tabel Pesanan. Hubungan ini disebut hubungan banyak ke banyak. Perhatikan bahwa untuk mendeteksi hubungan banyak ke banyak yang sudah ada antar tabel Anda, penting agar Anda mempertimbangkan kedua sisi hubungan tersebut.

    Untuk menyatakan hubungan banyak ke banyak, Anda harus membuat tabel ketiga, seringkali disebut tabel sambungan yang mengurai hubungan banyak ke banyak menjadi dua hubungan satu ke banyak. Anda menyisipkan kunci utama dari masing-masing dua tabel ke tabel ketiga tersebut. Hasilnya, tabel ketiga merekam tiap kemunculan, atau contoh, dari hubungan tersebut. Misalnya, tabel Pesanan dan tabel Produk memiliki hubungan banyak ke banyak yang ditetapkan dengan membuat dua hubungan satu ke banyak ke tabel Detail Pesanan. Satu pesanan bisa memiliki banyak produk, dan tiap produk bisa muncul di banyak pesanan.

  • Hubungan satu ke satu

    Dalam hubungan satu ke satu, tiap rekaman dalam tabel pertama bisa memiliki hanya satu rekaman yang cocok dalam tabel kedua, dan tiap rekaman dalam tabel kedua bisa memiliki hanya satu rekaman yang cocok di tabel pertama. Hubungan ini tidak umum karena, sering kali, informasi yang berkaitan dalam cara seperti ini disimpan dalam tabel yang sama. Anda mungkin menggunakan hubungan satu ke satu untuk membagi tabel dengan banyak bidang, untuk mengisolasi bagian tabel demi alasan keamanan, atau menyimpan informasi yang berlaku hanya untuk satu subkelompok tabel utama. Saat Anda memang mengidentifikasi hubungan tersebut, kedua tabel harus berbagi bidang yang sama.

Atas Halaman

Mengapa membuat hubungan tabel?

Anda bisa membuat hubungan tabel secara eksplisit dengan menggunakan jendela Hubungan, atau dengan menyeret bidang dari panel Daftar Bidang. Access menggunakan hubungan tabel untuk memutuskan cara menggabungkan tabel saat Anda harus menggunakannya dalam objek database. Terdapat beberapa alasan kenapa Anda sebaiknya membuat hubungan tabel sebelum Anda membuat objek database lainnya, seperti formulir, kueri dan laporan.

  • Hubungan tabel menginformasikan desain kueri Anda.

    Untuk bekerja dengan rekaman dari lebih dari satu tabel, Anda seringkali harus membuat kueri yang menggabungkan tabel-tabel tersebut. Kueri bekerja dengan mencocokkan nilai dalam bidang kunci utama dari tabel pertama dengan bidang kunci asing dalam tabel kedua. Misalnya, untuk mengembalikan baris yang mencantumkan semua pesanan untuk tiap pelanggan, Anda menyusun kueri yang menggabungkan tabel Pelanggan dengan tabel Pesanan berdasarkan pada bidang ID Pelanggan. Dalam jendela Hubungan, Anda bisa menentukan bidang yang digabungkan secara manual. Tapi, jika Anda sudah memiliki hubungan yang ditentukan antar tabel tersebut, Access menyediakan gabungan default, berdasarkan pada hubungan tabel yang sudah ada. Selain itu, jika Anda menggunakan salah satu panduan kueri, Access menggunakan informasi yang dikumpulkannya dari hubungan tabel yang sudah Anda tetapkan untuk menyajikan pilihan berinformasi pada Anda dan untuk mengisi pengaturan properti dengan nilai default yang sesuai.

  • Hubungan tabel menginformasikan desain formulir dan laporan pada Anda

    Saat Anda mendesain formulir atau laporan, Access menggunakan informasi yang dikumpulkannya dari hubungan tabel yang sudah Anda tetapkan untuk menyajikan pilihan berinformasi pada Anda dan untuk mengisi pengaturan properti dengan nilai default yang sesuai.

  • Hubungan tabel adalah dasar di mana Anda bisa memberlakukan integritas referensial untuk membantu mencegah rekaman baris terpisah dalam database Anda. Rekaman baris terpisah adalah rekaman dengan referensi ke rekaman lain yang tidak ada — misalnya, rekaman pesanan yang mereferensikan rekaman pelanggan yang tidak ada.

    Saat Anda mendesain sebuah database, Anda membagi informasi menjadi tabel, yang masing-masing memiliki kunci utama. Anda lalu menambahkan kunci asing ke tabel terkait yang mereferensikan kunci utama tersebut. Pasangan kunci utama-kunci asing tersebut membentuk dasar bagi hubungan tabel dan kueri multi tabel. Penting agar referensi kunci utama-kunci asing tetap tersinkronkan. Integritas referensial, bergantung pada hubungan tabel, membantu memastikan bahwa referensi tetap tersinkronkan.

Atas Halaman

Memahami integritas referensial

Saat Anda mendesain sebuah database, Anda membagi informasi database Anda menjadi banyak tabel berbasis subjek untuk mengurangi kelebihan data. Anda lalu memberi Access cara untuk menyatukan kembali data dengan meletakkan bidang yang umum ke dalam tabel berkaitan. Misalnya, untuk menyatakan hubungan satu ke banyak, Anda mengambil kunci utama dari tabel "satu" dan menambahkannya sebagai bidang tambahan ke tabel "banyak". Untuk menyatukan kembali data, Access mengambil nilai dalam tabel "banyak" dan mencari nilai yang sesuai dalam tabel "satu". Dengan cara ini nilai dalam tabel "banyak" mereferensikan nilai yang sesuai dalam tabel "satu".

Misalkan Anda memiliki hubungan satu ke banyak antara Pengirim dan Pesanan dan Anda ingin menghapus seorang Pengirim. Jika pengirim yang ingin Anda hapus memiliki pesanan dalam tabel Pesanan, pesanan tersebut akan menjadi "baris terpisah" saat Anda menghapus rekaman Pengirim. Pesanan masih akan berisi ID pengirim, tapi ID tersebut tidak valid lagi, karena rekaman yang direferensikannya tidak ada lagi.

Tujuan integritas referensial adalah untuk mencegah baris terpisah dan mempertahankan referensi dalam sinkronisasi sehingga situasi hipotetis ini tidak pernah terjadi.

Anda menerapkan integritas referensial dengan mengaktifkannya untuk hubungan tabel. Saat diberlakukan, Access menolak setiap operasi yang melanggar integritas referensial untuk hubungan tabel itu. Ini berarti Access akan menolak pembaruan yang mengubah target referensi, maupun penghapusan yang menghapus target referensi. Mungkin saja Anda memiliki kebutuhan yang benar-benar valid untuk mengubah kunci utama bagi pengirim yang memiliki pesanan dalam tabel Pesanan. Untuk kasus tersebut, yang benar-benar Anda butuhkan adalah agar Access otomatis memperbarui semua baris yang dihasilkan sebagai bagian dari sebuah operasi. Dengan cara itu, Access memastikan bahwa pembaruan selesai secara penuh sehingga database Anda tidak dibiarkan dalam keadaan tidak konsisten, dengan beberapa baris diperbarui dan beberapa tidak. Untuk alasan ini, Access mendukung opsi Pembaruan Berskala Bidang Terkait . Ketika Anda memberlakukan integritas referensial dan memilih opsi Pembaruan Bertingkat Bidang Terkait, lalu Anda memperbarui kunci utama, Access otomatis memperbarui semua bidang yang mereferensikan kunci utama.

Mungkin juga Anda memiliki kebutuhan yang valid untuk menghapus sebuah baris dan semua rekaman terkait — misalnya, rekaman Pengirim dan semua pesanan terkait untuk pengirim itu. Untuk alasan ini, Access mendukung opsi Penghapusan Bertingkat Rekaman Terkait. Ketika Anda memberlakukan integritas dan memilih opsi Penghapusan Bertingkat Rekaman Terkait, lalu Anda menghapus sisi kunci utama dari hubungan tersebut, Access otomatis menghapus semua bidang yang mereferensikan kunci utama.

Atas Halaman

Menampilkan hubungan tabel

Untuk menampilkan hubungan tabel Anda, klik Hubungan pada tab Alat Database. Jendela Hubungan terbuka dan menampilkan hubungan yang sudah ada. Jika tidak ada hubungan tabel yang telah ditetapkan dan Anda membuka jendela hubungan pertama kalinya, Access meminta Anda untuk menambahkan tabel atau kueri ke jendela tersebut.

Membuka jendela Hubungan

  1. Klik File, klik Buka, lalu pilih dan buka database.

  2. Pada tab Alat Database, di grup Hubungan, klik Hubungan.

  3. Pada tab Desain Hubungan , dalam grup Hubungan , klik Semua Hubungan.Ini menampilkan semua hubungan yang ditentukan dalam database Anda. Perhatikan bahwa tabel tersembunyi (tabel yang kotak centang Tersembunyi dalam kotak dialog Properti dipilih) dan hubungannya tidak akan diperlihatkan kecuali kotak centang Perlihatkan Objek Tersembunyi dipilih di dalam kotak dialog Opsi Navigasi.

Hubungan tabel dinyatakan oleh garis hubungan yang terbentuk antar tabel dalam jendela Hubungan. Hubungan yang tidak memberlakukan integritas referensial terlihat berupa garis tipis antar bidang umum yang mendukung hubungan tersebut. Saat Anda memilih hubungan dengan mengklik garisnya, garis tersebut menebal untuk mengindikasikan pemilihannya. Jika Anda memberlakukan integritas referensial untuk hubungan ini, garis tersebut terlihat lebih tebal di tiap-tiap ujungnya. Selain itu, angka 1 muncul di sepanjang bagian tebal garis tersebut di salah satu sisi hubungan tersebut, dan simbol tak hingga () muncul di sepanjang bagian tebal di garis di sisi lainnya.

Saat jendela Hubungan aktif, Anda bisa pilih dari perintah berikut ini pada pita:

Pada tab Desain Hubungan , dalam grup Alat :

  • Edit Hubungan Membuka kotak dialog Edit Hubungan. Saat Anda memilih garis hubungan, Anda bisa mengklik Edit Hubungan untuk mengubah hubungan tabel. Anda juga bisa mengklik ganda garis hubungan.

  • Hapus Tata Letak Menghapus semua tabel dan hubungan dari tampilan dalam jendela Hubungan. Perhatikan bahwa perintah ini hanya menyembunyikan tabel dan hubungan — tidak menghapusnya.

  • Laporan Hubungan Membuat laporan yang menampilkan tabel dan hubungan dalam database Anda. Laporan hanya memperlihatkan tabel dan hubungan yang tidak tersembunyi dalam jendela Hubungan.

Pada tab Desain Hubungan , dalam grup Hubungan :

  • Menambahkan Tabel    Memungkinkan pemilihan tabel untuk diperlihatkan dalam jendela Hubungan.

  • Sembunyikan Tabel Menyembunyikan tabel yang dipilih dalam jendela Hubungan.

  • Hubungan Langsung Menampilkan semua hubungan dan tabel terkait untuk tabel yang dipilih dalam jendela Hubungan, jika belum ditampilkan.

  • Semua Hubungan Menampilkan semua hubungan dan tabel terkait dalam database Anda dalam jendela Hubungan. Perhatikan bahwa tabel tersembunyi (tabel yang kotak centang Tersembunyi di dalam kotak dialog Properti tabel dipilih) dan hubungannya tidak akan diperlihatkan kecuali Perlihatkan Objek Tersembunyi dipilih di dalam kotak dialog Opsi Navigasi.

  • Tutup Menutup jendela Hubungan. Jika Anda membuat perubahan apa pun pada tata letak jendela Hubungan, Anda ditanyai apakan akan menyimpan perubahan tersebut atau tidak.

Atas Halaman

Perlu bantuan lainnya?

Ingin opsi lainnya?

Jelajahi manfaat langganan, telusuri kursus pelatihan, pelajari cara mengamankan perangkat Anda, dan banyak lagi.

Komunitas membantu Anda bertanya dan menjawab pertanyaan, memberikan umpan balik, dan mendengar dari para ahli yang memiliki pengetahuan yang luas.