- Kalkulus Relasional Tupel
Kalkulus relasional tupel adalah bahasa query yang non prosedural. Bahasa ini mendeskripsikan informasi yang diinginkan tanpa memberi prosedurnya secara detil untuk mendapatkan informasi tersebut. Kalkulus relasional tupel merupakan basis untuk bahasa query QUEL.
Sebuah query dalam bahasa ini ditulis :
{ t | P(t) }
artinya, semua tuple t sedemikian sehingga predikat P adalah benar untuk t. Dengan mengikuti notasi terdahulu, kita gunakan t[A] untuk menyatakan nilai tuple t pada atribut A, dan t ∈ r untuk menyatakan bahwa tuple t berada dalam relasi r.
Dalam kalkulus relasional ada 2 notasi yang penting, yang pertama adalah “terdapat beberapa (there exists)” yang ditulis :
∃ t ∈ r ( Q(t) )
artinya, terdapat beberapa tuple t anggota relasi r sedemikian sehingga bahwa predikat Q(t) adalah benar.
Yang kedua adalah “untuk seluruh (for all)” yang ditulis :
∀ t ∈ r ( Q(t) )
artinya, untuk seluruh tupel t anggota relasi r sedemikian sehingga bahwa predikat Q(t) adalah benar.
- Kalkulus Relasional Domain
Kalkulus relasional domain juga adalah bahasa query yang non prosedural dan karenanya berhubungan dekat dengan kalkulus relasional tupel. Berbeda dengan kalkulus relasional tupel, bahasa ini menggunakan variabel domain yang mengambil nilai dari domain atribut, bukan dari nilai seluruh tupel. Kalkulus relasional domain merupakan basis untuk bahasa query QBE.
Sebuah ekspresi dalam kalkulus relasional domain adalah berbentuk :
{ < x1, x2, . . . , xn > | P(x1, x2, . . . , xn) }
dimana x1, x2, . . . , xn merepresentasikan variabel-variabel domain. P merepresentasikan sebuah formula yang terdiri dari atom-atom. Sebuah atom dalam kalkulus relasional domain dapat berupa salah satu dari bentuk berikut ini :
- < x1, x2, . . . , xn > ∈ r, dimana r adalah relasi dengan n atribut dan x1, x2, . . . , xn adalah variabel domain atau konstanta domain.
- x ϴ y, dimana x dan y adalah variabel domain dan ϴ adalah operator relasional (≤, <, =, ≠, >, ≥). Kita membutuhkan atribut x dan y mempunyai domain yang bisa diperbandingkan dengan ϴ.
- x ϴ c, dimana x adalah variabel domain, ϴ adalah operator relasional, dan c adalah sebuah konstanta.
Dalam kalkulus relasional domain, seperti halnya dalam kalkulus relasional tupel, kita juga menggunakan notasi “terdapat beberapa (there exists)” dilambangkan dengan “∃” dan “untuk seluruh (for all)” dilambangkan dengan “∀”.
Referensi :
- Database System Concepts Silberschatz-Korth-Sudarshan, McGraw Hill, Fourth Edition, 2002
0 comments:
Posting Komentar