Model
Data Relasional
A. Pengertian Model data relational
adalah
kumpulan tabel berdimensi dua dengan masing-masing relasi (relations) tersusun
atas baris (tuple) dan kolom (atribut) pada suatu basis data.
Berikut
istilah pada model data relasional :
- Relasi : Sebuah tabel yang terdiri dari beberapa kolom dan beberapa baris.
- Attribute : Kolom pada sebuah relasi.
- Tuple : Baris pada sebuah relasi, atau kumpulan elemen yang saling berkaitan menginformasikan tentang suatu entitas secara lengkap.
- Domain : Seluruh kemungkinan nilai yang dapat diberikan ke suatu attribut.
- Degree : Jumlah attribut dalam sebuah relasi.
- Cardinality : Jumlah tuple dalam sebuah relasi.
B. Relasi
Relasi
adalah struktur data dasar untuk menyimpan informasi dalam hubungan diantara
sejumlah entitas yang berasal dari himpunan entitas yang berbeda. Relasi
memiliki schema yang mendeskripsikan nama relasi dan atribut beserta tipenya.
Contoh
:
penduduk =(NIK:string,
nama:string).
keterangan
: penduduk adalah nama relasi.
NIK dan nama adalah nama atribut.
string adalah tipe data dari atribut.
NIK
|
nama
|
6308032812920002
|
Antony Anwari Rahman
|
6308031706930003
|
Muhammadanil Al'faidhil
|
6308033013920004
|
Anisah
|
6308032604940005
|
Linda Sari
|
6308031908930006
|
Salahudin
|
Contoh
tabel dan relasinya
Definisi Domain
C. Kunci Atribut dari Relasi
a.
Candidate Key : Atribut yang digunakan untuk
membedakan antara satu baris dengan baris yang lain.
b.
Primary Key : Candidate key yang digunakan
untuk mengidentifikasikan tuple yang unik pada suatu relasi.
c.
Alternate Key : Candidate key yang tidak menjadi
Primary key.
d.
Foreign Key : Sebuah atribut dalam suatu
relasi yang merujuk ke primary key relasi yang lain.
D. Relational Integrity Rules
- Null : Nilai suatu atribut yang tidak diketahui dan tidak cocok untuk baris (tuple) tersebut. Nilai null digunakan untuk mengisi atribut yang nilainya tidak ada.
- Entity Integrity : Tidak ada satu komponen primary key yang bernilai Null.
- Referential Integrity : Garis yang menghubungkan antara satu tabel dengan tabel lain.
LATIHAN 1
Relation Key :
1.
Entitas Account
a. Candidate Key : Account_number, balance
b. Primary Key : account_number
c. Alternate Key : balance
d. Foreign Key : -
2. Entitas Branch
a. Candidate Key : branch-name, branch-city,assets
b. Primary Key : branch-name
c. Alternate Key : branch-city, assets
3.
Entitas Customer
a. Candidate Key : customer-name,customer-street,customer-city
b. Primary Key : customer-name
c. Alternate Key : customer-street, customer-city
4.
Entitas Loan
a. Candidate Key : loan-number,amount
b. Primary Key : loan-number
c. Alternate Key : amount
Latihan
2
1.
Tabel Siswa, Pelajaran, Guru
a.
Tabel Siswa
NIS
|
Nama_siswa
|
Tgl_lahir
|
Jenis_kelamin
|
2760
|
Ahmad Subaili
|
12/02/1993
|
Pria
|
2761
|
Anisah
|
30/12/1992
|
Wanita
|
2762
|
Antony Anwari Rahman
|
28/12/1992
|
Pria
|
2763
|
Muhamad Khairiyanto
|
17/03/1993
|
Pria
|
2764
|
Ridla Fansuri
|
28/10/1992
|
Pria
|
b.
Tabel Pelajaran
Kode_mapel
|
Nama_mapel
|
Guru_pengampu
|
MPU001
|
PAI
|
Hj. Makkiyah
|
MPU002
|
PKn
|
H. Haitami
|
MP031
|
Matematika
|
Ruspiati
|
MP034
|
Bahasa Indonesia
|
Firmansyah
|
MP036
|
Bahasa Inggris
|
Abbas
|
c.
Tabel Guru
NIP
|
Nama
|
Alamat
|
No_Telp
|
198003102
|
Hj. Makkiyah
|
Alabio
|
08125045899
|
198503104
|
H. Haitami
|
Amuntai
|
08125040988
|
200806124
|
Ruspiati
|
Sungai Pandan
|
081348778898
|
200407117
|
Firmansyah
|
Amuntai
|
081348998756
|
200608098
|
Abbas
|
Alabio
|
081348769878
|
2.
Tabel Keterhubungan
Entity
|
Relationship
|
Entity
|
Guru
|
Mengajar
|
Pelajaran
|
Siswa
|
Mengambil
|
Pelajaran
|
3.
Atribut Kunci
Entity
|
Atribut
|
Siswa
|
NIS,Nama_siswa, Tgl_lahir,
Jenis_kelamin
|
Pelajaran
|
Kode_mapel, Nama_mapel,
Guru_pengampu
|
Guru
|
NIP, Nama, Alamat, No_telp
|
Primary Key
Entity
|
Atribut
|
Siswa
|
NIS
|
Pelajaran
|
Kode_mapel
|
Guru
|
NIP
|
4.
ERD