Rabu, 22 Oktober 2014

Create a many-to-many relationship in Access

Create a many-to-many relationship in Access

Sebuah banyak-ke-banyak hubungan dalam database relasional ada ketika satu record dalam tabel A dapat direferensikan oleh satu atau lebih catatan dalam tabel B dan satu record dalam tabel B dapat direferensikan oleh satu atau lebih catatan dalam tabel A. Dalam tutorial ini Anda akan belajar cara membuat banyak-ke-banyak hubungan di Access 2010.
 
Sebuah banyak-ke-banyak hubungan terdiri dari tiga tabel. Di bawah ini adalah gambar skematik dari banyak-ke-banyak hubungan.
Skema banyak-ke-banyak hubungan
Skema representasi dari banyak-ke-banyak meja relationship.The di tengah disebut

Buat banyak-ke-banyak hubungan di Access

Saya akan menggambarkan penciptaan banyak-ke-banyak hubungan dengan sebuah contoh, termasuk meja Produk, meja Order dan meja persimpangan disebut Order2Product. Untuk membuat banyak-ke-banyak hubungan di Access ikuti langkah berikut.

Buat dua tabel yang ingin Anda link di banyak-ke-banyak hubungan

Dalam contoh ini saya membuat tabel Order dan tabel Produk di bawah ini. Kedua tabel memiliki field primary key AutoNumber. Maskapai bidang kunci primer nantinya akan digunakan untuk membuat banyak-ke-banyak hubungan antara tabel ini. Jika Anda ingin tahu cara membuat tabel dalam tampilan desain, kita lihat artikel ini: cara membuat tabel dalam Access 2010 .
Tabel urutan
Tabel urutan
Tabel Produk
Tabel produk

Membuat tabel persimpangan

Dalam hal ini ada dua cara produk terkait dengan pesanan. Kita dapat membuat tabel persimpangan dengan field primary key pengganti, seperti ID AutoNumber bidang Access secara otomatis memberikan.
Kami juga dapat membuat kita sendiri komposit primary key yang terdiri dari dua field kunci asing dalam tabel persimpangan. Aku akan menunjukkan kedua cara dan membahas implikasi dari setiap solusi.

Membuat tabel persimpangan dengan menggunakan kunci pengganti

Persimpangan meja dengan pengganti primary key akan memiliki tiga bidang, termasuk bidang primary key ID yang Akses secara otomatis membuat untuk Anda. Dua bidang non primary key adalah kunci asing. Mereka akan referensi kunci utama dari Order dan Produk tabel (atau mungkin beberapa meja lainnya dalam kasus Anda).
  1. Membuat tabel baru dan nama itu sesuatu seperti LeftTable2RightTable. Dalam contoh saya menamakannya Order2Product. Notasi ini sering dipilih untuk tabel persimpangan.
  2. Pergi ke tampilan desain tabel baru Anda (Baca cara membuat tabel dalam Access 2010 jika Anda membutuhkan informasi lebih lanjut tentang cara membuat tabel dalam tampilan desain).
  3. Biarkan ID field primary key secara otomatis disediakan dalam bijaksana. Tambahkan dua bidang baru. Dalam contoh saya menciptakan keteraturan dan produk bidang. Bidang pesanan akan referensi primary key dari tabel Order. Bidang produk akan referensi kunci utama dari tabel Produk.
  4. Pastikan bidang Anda adalah tipe data yang sama dengan bidang kunci utama mereka akan referensi.
Contoh di bawah ini adalah persimpangan meja selesai dengan beberapa data. Urutan dan produk bidang keduanya dari tipe Number, karena mereka berdua merujuk pada suatu bidang primary key AutoNumber, yang sebenarnya adalah bidang Nomor yang dikelola oleh database.
Order2Product persimpangan meja
Tabel persimpangan memiliki medan ID primary key dan dua bidang kunci asing. Setiap bidang kunci asing referensi satu sisi dari banyak-ke-banyak hubungan.
Implikasi
Sekarang, mari kita lihat implikasi dari solusi ini. Setiap record dalam tabel persimpangan mengikat produk ke pesanan. Order 1 terdiri dari hanya satu produk (4). Orde 2 terdiri dari 4 produk, atau apakah itu? Memang ada 4 produk dalam urutan. Artinya, kuantitas 4. Tapi, hanya ada 2 produk yang unik dalam urutan, karena produk 5 (album Nirvana Nevermind) ditambahkan 3 kali.
Itulah implikasi dari solusi ini: ketika produk ditambahkan ke perintah dua kali, ini menciptakan dua catatan dalam tabel Order2Product. Ini baik-baik saja. Hal ini hanya baik untuk menyadari implikasi ini, karena ada solusi lain.
Seringkali tabel persimpangan diciptakan dengan primary key yang terdiri dari kunci asing wor (produk dan ketertiban). Mari kita lihat tabel persimpangan yang menggunakan primary key komposit dan bidang kuantitas.

Membuat tabel persimpangan menggunakan kunci primer komposit

Mari kita membuat tabel persimpangan dengan primary key komposit untuk mencapai banyak-ke-banyak hubungan.
  1. Membuat tabel baru dan menyebutnya LeftTable2RightTable, menggantikan LeftTable dan RightTable dengan nama-nama tabel Anda.
  2. Pergi ke tampilan desain tabel baru Anda.
  3. Lepaskan bidang primary key ID AutoNumber yang Akses automaticcaly menyediakan dengan memilih dan mengklik baris Hapus tombol pada pita.
  4. Tambahkan dua bidang baru untuk referensi tabel pada setiap akhir dari banyak-ke-banyak hubungan.
  5. Pastikan masing-masing dua bidang Anda memiliki tipe data yang sama dari bidang kunci primer mereka akan referensi.
  6. Sekarang, tambahkan kunci utama termasuk kedua bidang ini dengan mengikuti langkah-langkah di bawah ini.
    1. Pilih kedua bidang dengan menempatkan pointer mouse di atas bar vertikal abu-abu di sebelah kiri definisi lapangan dan menyeret ke bawah, sambil memegang tombol kiri mouse ke bawah.

      Memilih dua bidang dalam tampilan desain
    2. Sementara bidang masih dipilih klik tombol Kunci utama pada pita.

      Tombol Kunci utama

      Ini akan membuat primary key yang terdiri dari dua bidang yang dipilih.
Sekarang Anda harus memiliki tabel persimpangan yang terbuat dari dua bidang yang sama-sama termasuk dalam primary key, seperti di bawah.
Tabel persimpangan memiliki dua bidang
Implikasi
Ada implikasi penting dari solusi ini. Seperti yang Anda ketahui, kunci primer harus unik accross semua baris dalam sebuah tabel. Ini berarti bahwa sekarang mungkin untuk menambahkan produk yang sama dengan perintah dua kali. Kita tidak bisa memiliki (1,2) catatan dua kali misalnya, jadi kami hanya bisa menambah produk 2 untuk memesan 1 sekali dengan solusi ini.
Solusi untuk masalah ini (atau akan kita menyebutnya fitur?) Adalah menambahkan kolom kuantitas ke meja persimpangan, seperti ini.
Junction meja dengan bidang kuantitas
Sekarang, ketika Anda ingin menambahkan produk 2 untuk memesan 1 dua kali, Anda hanya mengatur bidang kuantitas untuk 2.
Junction meja dengan bidang kuantitas dan beberapa data
Ini adalah bagaimana Anda akan menambahkan beberapa produk untuk pesanan dengan solusi bidang kuantitas.

Buat hubungan yang sebenarnya

Langkah-langkah terakhir dalam menciptakan banyak-ke-banyak adalah menciptakan hubungan yang sebenarnya di Hubungan tampilan. Membuat banyak-ke-banyak hubungan adalah masalah menciptakan dua hubungan satu-ke-banyak. Berikut adalah bagaimana Anda melakukannya.
  1. Buka tampilan Hubungan dengan pergi ke tab Database Tools pada pita dan memilih tombol Hubungan.

    Tombol Hubungan
  2. Pada layar Hubungan, tambahkan tiga meja Anda ingin membuat banyak-ke-banyak hubungan dengan ke layar. Anda dapat melakukan ini dengan menyeret tabel dari kiri ke layar atau dengan menggunakan Tampilkan jendela Table, yang dapat diakses melalui tombol Show Table pada pita.
  3. Ketika tabel Anda berada pada layar Hubungan tarik bidang primary key dari tabel entitas (Order dan Produk dalam contoh ini) dengan rekan-rekan mereka dalam tabel persimpangan.

    menyeret bidang untuk menciptakan hubungan
  4. Ketika Anda drag dan drop bidang primary key ke lapangan di meja lain, akses tahu Anda ingin membuat hubungan dan membawa pada jendela Edit Relationships. Ini adalah di mana Anda membuat hubungan yang sebenarnya. Dalam rangka menciptakan banyak-ke-banyak hubungan Anda harus membuat dua hubungan satu-ke-banyak.

    Hubungan mengedit
  5. Menciptakan hubungan one-to-many antara kedua tabel Anda entitas (Produk dan Ketertiban dalam contoh ini) dan meja persimpangan. Pilih semua tiga pilihan integritas (Catatan: opsi integritas dibahas dalam artikel Buat satu-ke-banyak di akses ).
Ketika kedua hubungan satu-ke-banyak yang menciptakan kamu telah benar-benar menciptakan banyak-ke-banyak hubungan, karena banyak-ke-banyak hubungan terbuat dari dua hubungan satu-ke-banyak. Hasil akhirnya akan terlihat seperti ini:
banyak hubungan selesai

Tidak ada komentar:

Posting Komentar