Wednesday, 12 August 2015

SI-202 MODEL DATA RELASIONAL



Pengertian Basis Data Relasional
       Model Data Relasional menyajikan data dalam bentuk tabel dua dimensi yang terdiri atas baris dan kolom untuk memberi gambaran sebuah berkas data
       Masing-masing tabel menyajikan orang, tempat, benda atau informasi tentang peristiwa yang dikumpulkan.
       Suatu basis data relasional adalah suatu kumpulan tabel dua dimensi.



Keunggulan model relasional
  1. Bentuknya sederhana
  2. Mudah untuk melakukan berbagai operasi data
  3. Alat komunikasi yang bagus antara pemakai dan perancang
  4. Struktur data yang direpresentasikan dengan relasi dapat secara langsung dikonversi ke RDBMS dan diimplementasikan pada komputer lewat RDBMS secara langsung

Istilah dalam Basis Data Relasional
Beberapa istilah penting di model relasional:
  1. Relasi, tabel yang terdiri dari baris dan kolom yang bernama
  2. Atribut, kolom bernama pada relasi
  3. Domain, Kumpulan nilai yang valid untuk satu atau lebih atribut
  4. Tupel, Baris pada sebuah relasi
  5. Kardinalitas, Jumlah tupel dalam sebuah relasi
  6. Derajat (degree) : Jumlah atribut dalam sebuah relasi


 Relasional Key
  1. Super Key,  Satu atribut / kumpulan atribut yang secara unik mengidentifikasi sebuah tupel di dalam relasi
  2. Candidate Key, Atribut di dalam relasi yang biasanya mempunyai nilai unik
  3. Primary Key, Candidate key yang dipilih untuk mengidentifikasikan tupel secara unik dalam relasi
  4. Alternate Key, Candidate key yang tidak dipilih sebagai primary key
  5. Foreign Key, Atribut dengan domain yang sama yang menjadi kunci utama pada sebuh relasi tetapi pada relasi lain atribut tersebut hanya sebagai atribut biasa



 Relational Integrity Rules
  1. Null, Nilai suatu atribut yang tidak diketahui dalam suatu baris (tuple), null ¹ nilai numerik nol
Contoh kalimat SQL
Create table mahasiswa(
                NRP CHAR(8),
                Nama CHAR(30) NOT NULL,
                Alamat CHAR(50) NOT NULL,
                KodePos CHAR(5),
                PRIMARY KEY (NRP)
                )
Nama, alamat tidak boleh diisi dengan NULL, sedang kodepos boleh diisi dengan NULL, dan NRP otomatis adalah NOT Null karena sebagai kunci primer

  1. Entity Integrity, Tidak ada satu komponen primary key yang bernilai null
  2. Referential Integrity, integritas pengacuan adalah jika foreign key terdapat di relasi maka nilai foreign key harus cocok dengan nilai candidate key suatu tupel di relasi asal (home relation)

Bahasa pada basis data relasional
       adalah bahasa query sebagai pernyataan yang diajukan untuk mengambil informasi, Terbagi 2 :
1. Bahasa Formal
                Bahasa query yang diterjemahkan dengan menggunakan simbol-simbol matematis
Contoh :
       Aljabar relasional
                Bahasa query prosedural : pemakai menspesifikasikan data apa yang dibutuhkan dan bagaimana untu mendapatkannya
       Kalkulus relasional
                 Bahasa query non prosedural : pemakai menspesifikasikan data apa yang dibutuhkan tanpa menspesifikasikan bagaimana utntuk mendapatkannya
Kalkulus relasional terbagi 2 :
       · Kalkulus relasional tupel
       · Kalkulus Relasional Domain
2. Bahasa Komersial
                Bahasa query yang dirancang sendiri oleh programmer menjadi suatu program aplikasi agar pemakai lebih mudah menggunakannya (user friendly)
Contoh :
       QUEL, Berbasis pada bahasa kalkulus relasional
       QBE, Berbasis pada bahasa kalkulus relasional
       SQL, Berbasis pada bahasa kalkulus relasional dan aljabar relasional

Aljabar relasional
       Bahasa query formal basisdata relasional adalah bahasa untuk meminta informasi dari basisdata
       Aljabar relasional adalah bahasa query prosedural.
       Bahasa prosedural adalah pemakai menginstruksikan ke sistem untuk melakukan sederatan operasi agar diperoleh hasil yang diinginkan
       Prosedural pada aljabar relasional adalah prosedural pada level tinggi
       Aljabar relasional merupakan kunci pemahaman kerja internal DBMS relasional
       Pemahaman aljabar relasional merupakan hal yang esensi dalam merancang query SQL yang diolah secara efisien.
       Aljabar relasional mendefinisikan sekumpulan operator dan rumus untuk memanipulasi himpunan data

lima operasi dasar di aljabar relasional:
  1. Select ( s )
  2. Project  (Õ )
  3. Union (È )
  4. Set – difference ( - )
  5. Cartesian-product ( x, dsb juga cross product)
       Operasi turunan dari opersi dasar tsb:
  1. Set intersection
  2. Theta join
  3. Natural join
  4. Devision
Operasi aljabar relasional
       Untuk melihat dampak dari setiap operasi relasi berikut:
Dosen={NIP,nama,tLahir,tglLahir,alamat,kota,kodePos}






Operasi select (s)
       Select adalah operasi menyeleksi tupel-tupel yang memenuhi suatu predikat
       Operator pembandingan (<, £, =, ³, ¹ )
       Beberapa predikat dapat dikombinasikan menjadi predikat majemuk menggunakan penghubung AND (Ù) dan OR (Ú)

Contoh 1:
Daftarkan dosen yang lahir di Tasikmalaya?
Jwb: ekspresi aljabar relasional:
stLahir=“Tasikmalaya”(Dosen)
       Hasilnya adalah




Contoh 2
       Daftarkan dosen yang lahir di Tasikmalaya atau Ciamis
       Ekspresi aljabar relasional:
                stLahir=“Tasikmalaya”ÚtLahir=“Ciamis” (Dosen)



Operasi project (Õ )
       Project adalah operasi untuk memperoleh kolom2 tertentu
       Operasi project adalah operasi unary yang mengirim relasi argumen dengan kolom2 tertentu
       Karena relasi adalah himpunan maka baris2 duplikasi dihilangkan

       Contoh 1
Tampilkan kolom NIP, nama, tempat lahir, dan gaji pokok dosen
       Ekspresi aljabar relasional
pNIP,nama,tLahir,Gpokok(Dosen)
       Hasilnya adalah:


       Contoh 2
Tampilkan kolom NIP, nama, tempat lahir, dan gaji pokok dosen dimana gaji pokok lebih besar dari 1.200.000
       Ekspresi aljabar relasional
pNIP,nama,tLahir,Gpokok(s Gpokok>1.200.000(Dosen))
       Hasilnya adalah:


Operasi cartesian-product (x)
       Adalah operasi untuk menghasilkan tabel hasil perkalian kartesian
                R x S = {(x,y) ا x Є R dan  y Є S }
       Operasi cartesian product memungkinkan kita mengkombinasikan informasi beberapa relasi, operasi ini adalah operasi biner
       Relasi adalah subset hasil cartesian product dari himpunan domain2 relasi tersebut

       Contoh 1
Cartesian-product (x) relasi Jurusan dan TgsJurusan
       Ekspresi alajabar relasional:
Jurusan x TgsJurusan
       Hasilnya adalah:


Opersi union (È )
       Adalah operasi untuk menghasilkan gabungan tabel dengan syarat kedua tabel memiliki atribut yang sama yaitu domain atribut ke-I masing2 tabel harus sama
                R È S = { x ا x Є R atau x Є S }
       Contoh
Tampilkan NIP dosen dimana gaji pokoknya lebih besar daripada Rp. 12.000.000

       Ekspresi aljabar relasional:
                 ÕNIP(sGpokok>12000000(dosen))
       Hasilnya adalah

       Contoh 2
Tampilkan NIP dari dosen yang lahir di Jakarta atau Tasikmalaya
        ekspresi aljabar relasional:
ÕNIP(stLahir=“Jakarta”ÚtLahir=“Tasikmalaya”(dosen))


       Tampilkan NIP dosen dimana gaji pokoknya lebih besar daripada Rp. 12.000.000

Digabung (union) dengan
       Tampilkan NIP dari dosen yang lahir di Jakarta atau Tasikmalaya
       Ekspresi Aljabar relasional
(ÕNIP(sGpokok>12000000”(dosen))) È (ÕNIP(stLahir=“Jakarta”ÚtLahir=“Tasikmalaya”(dosen)))


Set-difference (-)

       Adalah operasi untuk mendapatkan tabel di suatu relasi tapi tidak ada di relasi lainya
                R-S={ x ا x Є R atau x Є S }
       Contoh
Tampilkan NIP dosen dimana gaji pokoknya lebih besar daripada Rp. 12.000.000 tetapi tidak lahir di Jakarta atau Tasikmalaya

       Ekspresi aljabar relasional
ÕNIP(sGpokok>12000000”(dosen)) -ÕNIP(stLahir=“Jakarta”ÚtLahir=“Tasikmalaya”(dosen))
        Hasilnya adalah:




No comments:

Post a Comment