Monday, June 29, 2015

Hubungan Banyak ke Banyak

Relationship Many to many

Definasi many to many

Many to many boleh ditakrif sebagai walaupun hubungan many to many itu boleh (dibenarkan),dan tidak wajar. Kebiasaanya jadual yang ketiga akan diperkenalkan untuk membolehkan 2 hubungan one to many terjalin.

Many to many mempunyai ciri seperti berikut:

·         Mempunyai lebih dari satu jadual, mungkin tiga atau lebih lagi
·         Mempunyai hubungan antara tiga jadual yang dibina
·         Mempunyai nilai yang sepadan untuk dihubungkan

Ciri yang saya sebutkan adalah seperti rajah di bawah:




Hubungan satu ke banyak (One to Many)

Relationship One to Many

Assalamualaikum hari ni saya akan bincangkan tentang ciri ciri hubungan antara satu ke banyak atau bahasa inggerisnya One to Many. Harap apa yang dikongsikan saya ini dapat membantu para pembaca yang gemar datang ke blog saya.

Definasi one to many

One to many bermaksud setiap satu rekod dalam jadual 1 hendaklah boleh dibahagikan mengikut yang sepadan (sama) pada jadual 2. Setiap rekod dalam jadual 2 hanya mempunyai 1 nilai yang sepadan (sama) dengan jadual 

One to many mempunyai ciri seperti berikut:

·         Mempunyai dua jadual
·         Satu rekod dalam jadual satu mempunyai nilai yang sama dalam jadual 2
·         Dalam rekod jadual 2 hanya mempunyai satu nilai yang sepadan (sama)

Perkara yang saya maksudkan adalah seperti rajah di bawah:


Setiap pelanggan yang ditunjukkan dalam rajah di atas boleh mempunyai nilai sifar, satu atau beberapa pesanan. Tetapi satu order dibuat  dimiliki oleh hanya satu pelanggan.


Hubungan antara Satu ke satu

Relationship One to one


Definasi one to one

One to one adalah setiap satu rekod dalam jadual hanya mempunyai satu nilai yang sepadan dalam 2 jadual. Maksudnya rekod dalam  jadual 2 itu mempunyai satu nilai yang sepadan (sama) dengan jadual 1 dan terhubunglah hubungan one to one.

One to one mempunyai ciri seperti berikut:

·         Satu rekod hanya mempunyai satu nilai
·         Mempunyai nilai yang sepadan (sama)
·         Hanya mempunyai dua jadual

Contoh:

Katakan saya seorang peniaga yang ingin membuat rekod pelanggan dalam sistem perisian Ms Access.


 Rajah 1

Saya  meletakkan maklumat alamat pada jadual yang berlainan untuk menjadikannya hubungan one to one seperti rajah yang saya tunjukkan di atas.




Rajah 2

Sekarang kita boleh menghubungkan kaitkan antara jadual costumers dan jadual addresses. Setiap alamat yang tergolong  hanya untuk satu pelanggan sahaja, hubungan ini merupakan hubungan “one to one”. Perlu juga kita ingat bahawa jenis hubungan satu ke satu ini tidak terlalu biasa. Jadual awal yang saya masukkan tadi telah saya masukkan beserta alamat pelanggan itu. Seperti dalam jadual di atas rajah 2 telah saya wujudkan medan (field) customer_id pada jadual CUSTOMERS dan address_id pada jadual ADDRESS untuk dihubungkan di antara satu sama lain. Ini dipanggil sebagai kekunci asing (foreign key). Ia memang digunakan untuk semua pangkalan data. Kekunci asing berfungsi untuk melindungi pangkalan data dari berselerak.

Wednesday, June 17, 2015

Apa itu hubungan pangkalan data ?

Penerangan Tentang hubungan pangkalan data (relationship)

Dalam konteks pangkalan data, hubungan (relationship) merupakan satu keadaan yang wujud di antara dua jadual pangkalan data hubungan apabila satu jadual mempunyai kunci asing yang merujuk pada  kunci utama jadual lain. Hubungan (relationship) membolehkan pangkalan data hubungan untuk berpecah dan menyimpan data dalam jadual yang berbeza, dan berfungsi untuk menghubungkan item data yang berbeza-beza.

Contoh Untuk Menerangkan Relationship

Sebagai contoh, dalam satu pangkalan data bank CUSTOMER_MASTER jadual data pelanggan dengan lajur kunci utama bernama CUSTOMER_ID; ia juga menyimpan data pelanggan dalam jadual ACCOUNTS_MASTER, yang memegang maklumat mengenai akaun bank yang berbeza dan pelanggan yang berkaitan. Untuk menghubungkan kedua-dua jadual dan menentukan maklumat pelanggan dan akaun bank, lajur CUSTOMER_ID sama mesti dimasukkan dalam jadual ACCOUNTS_MASTER itu, rujukan ID pelanggan yang sedia ada dari jadual CUSTOMER_MASTER itu. Dalam kes ini, ruangan CUSTOMER_ID jadual ACCOUNTS_MASTER adalah kunci asing yang merujuk lajur dengan nama yang sama dalam jadual CUSTOMER_MASTER itu.

Perbezaan Pangkalan Data Hubungan Dengan Jenis Pangkalan Data Lain

Ciri-ciri asas yang membezakan pangkalan data hubungan dari jenis pangkalan data yang lain (misalnya, rata-fail) adalah keupayaan untuk menentukan hubungan.
Definisi ini telah ditulis dalam konteks Pangkalan data.

Maksud relationship dalam access

Mengenal Relationships di dalam Microsoft Access

Relationships adalah diagram yang menyatakan hubungan atau korelasi antara satu field (medan) didalam suatu table dengan field pada table lainnya berdasarkan kunci tertentu. Relationships umumnya digunakan untuk table-table yang mempunyai hubungan tertentu, dimana pada table yang satu tersimpan field primary key dan pada table yang lain terdapat field foreign key. Adapun foreign key adalah field kunci yang boleh lebih dari satu record didalam table. Dengan demikian, data pada masing-masing table dapat terkelompok sesuai dengan primary key nya, sehingga tidak akan tertukar. Lihatlah contoh relationships yg saya ambil dari contoh file Northwind.mdb, sbb:

Pada gambar diatas, field CustomerID pada table Customer disebut primary key (PK) dan field CustomerID pada table Orders disebut foreign key (FK). Terlihat pada diagram relationships diatas beberapa table dengan symbol 1 (one) sebagai primary key dan symbol ∞ (many) sebagai foreign key, hal ini menandakan bahwa jenis relationships yang digunakan adalah One to Many. Syarat membuat relationships adalah kedua field yang akan dihubungkan tersebut harus mempunyai jenis (data type) yang sama. Misalnya didalam database Northwind.mdb diatas, field SupplierID pada table Suppliers dihubungkan dengan field SupplierID pada table Products, field ProductID pada table Products dihubungkan dengan field ProductID pada table Order Details. Kita tidak bisa menghubungkan field dengan data type text dengan field dengan data type number, jadi harus memiliki data type yang sama.
Jenis relationships dibagi menjadi tiga, yaitu:
1. One to One, yaitu satu record data pada suatu table dihubungkan hanya dengan satu record data pada table lainnya.
2. One to Many, yaitu satu record data pada suatu table dihubungkan dengan lebih dari satu record data pada table lainnya.
3. Many to Many, yaitu lebih dari satu record data pada suatu table dihubungkan dengan lebih dari satu record data pada table lainnya.

Membuat Relationships

Untuk membuat relationships, masuk ke ribbon Database Tools -> Relationships.
Kemudian pada navigation pane, klik & drag table-table yang hendak dibuat relationshipsnya. Lalu kiri field pada suatu table, kemudian tahan (tombol kiri mouse jangan dilepas) dan geser ke field lainnya. Proses ini disebut juga klik & drag. Ketika proses klik & drag berakhir maka akan muncul kotak dialog Edit Relationships sebagai berikut:

Saya menyarankan agar checkbox Enforce Referential Integrity ini selalu diberi tanda centang. Penjelasannya adalah sebagai berikut:
· Enforce Referential Integrity, pilihan ini digunakan untuk memastikan bahwa foreign key pada suatu table terdapat juga pada primary key didalam table lainnya.
· Cascade Update Related Fields, pilihan ini digunakan untuk mengupdate secara otomatis foreign key pada suatu table jika primary key didalam table lainnya berubah. Pilihan ini akan aktif jika Enforce Referential Integrity telah dipilih.
· Cascade Delete Related Record, pilihan ini digunakan untuk menghapus foreign key pada suatu table jika primary key didalam table lainnya dihapus. Pilihan ini akan aktif jika Enforce Referential Integrity telah dipilih.