Sabtu, 29 September 2012

Model data relational

Sebenarnya pada pertemuan perkuliahan Sistem Basisdata yang keempat ini, bapak dosen belum sempat menjelaskan materi "Model data relational". Mungkin baru pada pertemuan minggu berikutnya beliau dapat menjelaskan materi tersebut. Tetapi tugas posting harus tetap berjalan. dan ini adalah postingan ke empat saya mengenai "Model data relational".

Model data relational merupakan kumpulan tabel berdimensi dua dengan masing-masing relasi tersusun atas tuple (baris) dan atribut (kolom) pada suatu basis data.
Suatu model data yang meletakkan data dalam bentuk relasi biasa disebut tabel. Masing-masing tabel memiliki struktur yang sama dengan ER database.

Beberapa istilah yang terdapat pada pembahasan model data relational, adalah :

  1. Relasi  : sebuah tabel yang terdiri dari beberapa kolom dan beberapa baris
  2. Attribute : kolom pada sebuah relasi
  3. Tuple : baris pada sebuah relasi atau kumpulan elemen-elemen yang saling berkaitan menginformasikan tentang suatu entitas secara lengkap
  4. Domain : seluruh kemungkinan nilai yang dapat diberikan ke suatu attribut
  5. Degree : jumlah atribut dalam sebuah relasi
  6. Cardinality : jumlah tuple dalam sebuah relasi


  •  Relasi
    • Relasi menunjukkan adanya hubungan diantara sejumlah entitas yang berasal dari himpunan entitas yang berbeda.  
    •  Setiap relasi mempunyai skema yang mendeskripsikan nama relasi dan atribut beserta tipenya.   
    •  Contoh : mahasiswa= (nim : string, nama:string) 
      • Mahasiswa adalah nama relasi. Nim dan nama adalah atribut. Sedangkan string adalah tipe dari atribut.

Istilah alternatif
ER Model
Relational Model
Database
Traditional Programer
Entity
Relation
Table
File
Entity Instance
Tuple
Row
Record
Attribute
Attribute
Column
Field
Identifier
Key
Key
Key (link)


  • Mendefinisikan domain
  1. Memberi nama domain yang sesuai dengan nilai yang akan dimiliki domain tersebut.
  2. Menentukan tipe data dari nilai yang akan membentuk domain.
  3. Menentukan format domain.

  • Relational key 
    • Candidate key : atribut yang bersifat unik yang dapat digunakan untuk membedakan antara satu baris dan dengan baris yang lain. Dalam setiap relasi minimal mempunyai sebuah kunci candidate. 
    •  Primary key : salah satu dari candidate key yang digunakan sebagai kunci utama untuk mengidentifikasi tuple yang unik pada suatu relasi. Dalam setiap relasi harus mempunyai primary key dan jumlahnya satu buah. Primary key harus unik dan tidak boleh null. 
    •  Alternate key : bagian dari candidate key yang tidak menjadi primary key. 
    •  Foreign key : sebuah atribut dlam suatu relasi yang merujuk ke primary key relasi lain


  • Batasan-batasan integritas :
    • Merupakan suatu batasan yang diberikan terhadap suatu relasi
    • Ditetapkan ketika schema didefinisikan
    • Dicek ketika relasi-relasi dimodifikasi ata dimanipulasi (penambahan, pengubahan, penghapusan, dan pencarian / menampilkan data).

  • Relation integrity rules
    • Null adalah suatu atribut yang tidak diketahui dan tidak cocok utnuk baris tersebut. nilai null digunakan untuk menyatakan / mengisi atribut-atribut yang nilainya memang belum siap / tidak ada.
    • Entity integrity adalah tidak ada satu komponen primary key yang bernilai null
    • Referential integrity adalah garis yang menghubungkan antara satu tabel dengan tabel lain.



Latihan 1


Entitas Account
Candidat Key : Account_number, balance
Primary Key : account_number
Alternate Key : balance
Foreign Key : -

Entitas Branch
Candidat Key : branch-name, branch-city, assets
Primary Key : branch-name
Alternate Key : branch-city, assets

Entitas Customer
Candidat Key : customer-name, customer-street, customer-city
Primary Key : customer-name
Alternate Key : customer-street, customer-city

Entitas Loan
Candidat Key : loan-number, amount
Primary Key : loan-number
Alternate Key : amount


Latihan 2
Buat tabel-tabel dan keterhubungannya :

  1.   Siswa, Pelajaran, Guru dengan minimal masing-masing tabel mempunyai 5 record/tuple/baris.
  2.  Buatlah tabel baru untuk keterhubungannya.
  3.  Tunjukan atribut kunci yang ada.
  4.   Gambar ERD


Jawaban :
1.       Tabel siswa
NIS
Nama_siswa
Tgl_lahir
Jenis_kelamin
001
Cita Puspitasari
25/5/1993
Wanita
002
Galuh Puspita
1/9/1994
Wanita
003
Mega Pranata
4/7/1993
Laki-laki
004
Roziq Bahtiar
19/10/1993
Laki-laki
005
Nurkholis Adhi
8/3/1993
Laki-laki

Tabel pelajaran
Kode_mapel
Nama_mapel
Guru_pengampu
MKU001
Agama
Siti Mushoha
MKU002
Bahasa Indonesia
Wisnu Widiastuti
MKU003
Matematika
Andi Setiawan
MKU004
IPA
Aris Munandar
MKU005
Bahasa Inggris
Sukendro
 
Tabel guru
NIP
Nama
Alamat
No_telp
2012001
Siti Mushoha
Purwokerto
081327033001
2012002
Wisnu Widiastuti
Purwokerto
081327033002
2012003
Andi Setiawan
Purwokerto
081327033003
2012004
Aris Munandar
Purwokerto
081327033004
2012005
Sukendro
Purwokerto
081327033005



            2.       Tabel keterhubungan


            3.       Atribut kunci / primary key
Entity
Primary key       
Siswa
NIS
Pelajaran
Kode_mapel
Guru
NIP


           4.       Gambar ERD