yeni herdiyeni

Hubungan interpersonal ala one-to-one relationship

Oleh : Wisnu Ananta (teman kantor..:)
Ada yang menarik dalam konsep relationship pada basis data, khususnya mengenai one-to-one relationship. Konsep ini mengenai bagaimana mentransformasikan ER model yang mengandung one-to-one relationship ke dalam model. Apakah dua buah entitas yang memiliki one-to-one relationship ini akan ditransformasikan menjadi satu tabel atau dua tabel ? Kalau dua tabel, primary key dari tabel yang mana yang harus ditempatkan pada tabel yang lain, menjadi foreign key ?
 
Saya akan mulai dengan contoh. Andaikan ada dua entitas : mahasiswa dan komputer. Jika asumsinya setiap mahasiswa mendapat fasilitas satu komputer dan setiap mahasiswa selalu menggunakan computer yang sama untuk melakukan praktikum dari semester awal sampai dia lulus, maka relationship antara entitas mahasiswa dan computer ini adalah one-to-one relationship. Jika ternyata masing-masing mahasiswa mendapat satu computer dan tidak ada computer yang tersisa (semua telah dialokasikan kepada mahasiswa), maka kedua entitas ini dinamakan memiliki mandatory one cardinality (total participation) . Untuk kasus yang demikian, maka transformasi model ER ke model relational menjadi satu tabel. Kita satukan kedua entitas dengan atribut-atributnya ke dalam satu tabel.
 
Sebagai contoh: entitas mahasiswa memiliki atribut NRP, dan entitas computer memiliki atribut kode_komp dan tipe. Misal entity instance dari entitas mahasiswa adalah
M={M1, M2, M3} dan entity instance dari entitas computer adalah K={(K1, T1), (K2, T2), (K3, T3)}, maka model relasionalnya menjadi tabel baru (misal M_K) yang mengandung tiga field NRP, Kode_komp, dan Tipe dengan entity instancenya 
M_K = {(M1, K1, T1), (M2,  K2, T2), (M3, K3, T3)}.
 
Dalam konteks hubungan interpersonal (hubungan pribadi antara dua orang manusia), ini adalah hubungan interpersonal yang ideal. Jika analoginya, diri kita adalah representasi dari suatu entitas, dengan atribut berupa keinginan, harapan, dll. Dan orang lain adalah entitas yang lain. Maka jika setiap entity instance kita (keinginan/harapan) kita bertemu tepat dengan entity instance (keinginan/harapan/ atribut lainnya) dari orang lain…. Maka berarti sesungguhnya hati kita dengan hati orang itu telah menjadi satu. Kita mampu merasakan apa yang orang lain rasakan. Ini mungkin seperti yang diisyaratkan Nabi : “tidak beriman seseorang sebelum dia mencintai suadaranya seperti kecintaannya  pada dirinya sendiri.”     
 
Tapi memang sulit mewujudkan relationship yang ideal seperti di atas. Kenyataannya, kita sering berusaha memahami orang lain tetapi merasa bahwa orang lain itu  belum memahami kita penuhnya. Konsep one-to-one relationship berikut mungkin akan memperjelas bagaimana kita harus bersikap.
 
Kembali ke contoh entitas mahasiswa dan computer. Jika asumsinya departemen tersebut memiliki computer yang berlebih. Maka setiap mahasiswa mendapatkan tepat satu computer, yang berarti entity instance dari entitas mahasiswa berpartisipasi penuh pada relationship (mandatory one cardinality) . Sementara itu, karena jumlah computer berlebih, maka ada computer yang menganggur (alias tidak dialokasikan kepada mahasiswa) sehingga  entity instance pada entitas computer hanya berpartisipasi sebagian (optional one cardinality) . Untuk kasus yang demikian, ketika ditransformasikan ke model relational, akan  menghasilkan dua tabel, yaitu : tabel mahasiswa dan tabel computer. Dan yang terpenting adalah primary key dari tabel yang memiliki optional one cardinality (dalam hal ini tabel komputer harus ditempatkan ke  tabel yang mandatory one cardinality (dalam hal ini tabel mahasiswa) sebagai foreign key. Tidak boleh terbalik. Jika terbalik, akan banyak nilai Null pada tabel komputer.
 
Lebih jelasnya dapat dilihat berikut:
jika misalnya M = {(M1, M2, M3} dan K = {(K1, T1), (K2, T2), (K3, T3), (K4, T4), (K5, T5)} maka setelah ditransformasikan ke dalam model relasional menjadi dua tabel M dan K, yaitu:  M = {(M1,K1), (M2,K2), (M3, K3)}, di mana K1, K2, dan K3 sebagai foreign key.
 
dan K = {(K1, T1), ( K2 , T2), (K3, T3), (K4, T4), (K5, T5)}.
 
Jika penempatan primary key terbalik. Maka akan menghasilkan :
 
M = {M1, M2, M3} dan K = {(K1, T1, M1), ( K2 , T2, M2), (K3, T3, M3), (K4, T4, Null), (K5, T5, Null)}, dimana M1, M2, dan M3 menjadi foreign key.
 
Dalam konteks hubungan interpersonal. Jika kita merasa tidak semua keinginan/harapan dipenuhi oleh orang lain tersebut maka analoginya kita seperti entitas computer pada contoh di atas (yaitu memiliki optional one cardinality)  sedangkan orang lain  tersebut mungkin telah merasa cukup puas dengan relationship yang kita bangun analoginya seperti entitas mahasiswa (yang memiliki mandatory one cardinality) . Sesuai dengan contoh di atas, kalau kita menemui kasus yang demikian, maka seharusnyalah kita tetap bersabar/berusaha memahami orang lain tersebut. Kita berusaha dengan ikhlas untuk terus menanamkan identitas kita (primary key) ke dalam lubuk hati orang lain tersebut (menjadi foreign key). Berusaha untuk selalu memulai memahami, memaafkan, menyapa, dll. Karena jika kita berbuat sebaliknya, menuntut orang lain tersebut memulai untuk selalu memahami kita, yang  kita dapatkan adalah kekosongan-kekosong an (nilai NULL) yang mengisi jiwa kita. Tanpa kita sadari sebenarnya ada ruang hampa dalam diri kita. Oleh karena itu,  ini mungkin yang diisyaratkan oleh Nabi Muhammad saw, manusia paling sempurna akhlaknya, agar kita “menyebarkan salam”, “menyebarkan senyum”, “dan selalu menjadi yang lebih dulu memaafkan”.
Moga bermanfaat.

2 thoughts on “Hubungan interpersonal ala one-to-one relationship

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s