RELATIONAL MODEL
Relational Model
A. Terminologi
- Relation → tabel dengan kolom dan baris
- Atribut → nama kolom pada relation (tabel)
o Informasi atau karakteristik tentang objek
- Domain → kumpulan nilai-nilai yang diijinkan pada satu atau lebih atribut
o Setiap atribut di relation didefinisikan oleh domain
o Mungkin berbeda untuk setiap atribut, atau dua atau lebih atribut
mungkin didefinisikan di domain yang sama
o Contoh : Nilai mata kuliah (bisa sama dan bisa berbeda), NIM, Nama
- Tuple → baris pada relation (tabel)
- Intension → struktur pada relation dengan domain dan batasan-batasan pada nilai
yang mungkin (biasanya tetap)
- Degree → jumlah atribut pada relation (tabel)
o Unary relation : sebuah relation dengan 1 atribut
o Binary relation : sebuah relation dengan 2 atribut
o Ternary relation : sebuah relation dengan 3 atribut
o N-ary relation : sebuah relation dengan lebih dari 3 atribut
- Cardinality → Jumlah tuple pada relation (tabel)
Modul Jurusan Statistika Angkatan 57 Semester IV
Pengurus Angkatan STIS 57
Divisi Akademik
o Cardinality pada tabel adalah property dari tuple pada relation
- Relational Database adalah kumpulan relation yang dinormalisasi dengan nama
relation yang berbeda
o Terdiri atas relation yang terstruktur dengan tepat → dinormalisasi
B. Contoh Relation
- Relation pada Branch dan Staff
- Contoh Atribut Domain
C. Terminologi Alternatif
Formal Terms Alternative 1 Alternative 2
Relation Tabel File
Tuple Baris Record
Attribute Kolom Field
D. Properties of Relations (Tabel)
- Nama relation (tabel) berbeda dari relation yang lain pada skema relation
- Setiap cell pada relation terdiri dari satu nilai
- Setiap atribut punya nama yang berbeda
- Nilai sebuah atribut berasal dari domain yang sama
- Setiap tuple berbeda; tidak ada duplicate tuple
- Order pada atribut tidak penting
- Order pada tuple tidak penting secara teori
E. Relational Keys
- Tidak ada duplicate tuple pada relation (tabel) → mengidentifikasi satu atau lebih
atribut (disebut relational keys) yang mengidentifikasi secara unik setiap tuple
pada relation
- Super key : Sebuah atribut atau kumpulan atribut (composite key) yang
mengidentifikasi secara unik sebuah tuple pada relation
- Candidate key
o Superkey(K) dimana tidak ada bagian dari superkey dengan relation
o Di setiap tuple pada relation, nilai K secara unik mengidentifikasi tuple
(uniqueness)
o Tidak ada bagian dari K yang mempunyai keunikan property
(irreducibility)
o Contoh
Candidate key
Branch→ branchNo, postcode
Modul Jurusan Statistika Angkatan 57 Semester IV
Pengurus Angkatan STIS 57
Divisi Akademik
- Primary Key : Candidate key yang dipilih untuk mengidentifikasi tuple secara
unik pada relation
- Alternate Key : Candidate key yang tidak dipilih untuk menjadi primary key
- Foreign Key: Atribut, atau sekumpulan atribut pada satu relation yang cocok
dengan candidate key pada beberapa (kemungkinan sama) relation
F. Representasi Database Relasional Skema
- Beri nama relation juga nama atribut dalam tanda kurung; Biasanya primary key
diberi garis bawah
- Contoh
o Branch (branchNo, street, city, postcode)
o Staff(staffNo,fName, lName, position, sex, DOB, salary, branchNo)
G. Integrity Constraint
- Sebuah data mempunyai dua bagian
o Bagian manipulasi, mendefinisikan tipe operasi yang diijinkan pada data
o Sekumpulan batasan integritas, yang menjamin bahwa data tersebut
akurat
- Contoh
o Domain constraint → setiap atribut mempunyai sebuah domain yang
terkait
o Integritas entitas
Pada relation dasar, tidak ada primary key pada atribut bisa saja
null
Koresponden pada relation dasar untuk entitas dalam skema
konseptual
o Integritas referensi
Jika foreign key ada dalam relation, nilai foreign key lainnya
harus sama dengan nilai candidate key pada beberapa tuple di
relation pokok atau foreign key harus sepenuhnya null
o Keserbaragaman
o Batasan umum
Aturan tambahan yang dispesifikasikan oleh pengguna atau
administrator database yang mendefinisikan atau membatasi
pada beberapa aspek perusahaan
Contoh : mengatur batas pada kerja staff di cabang
- Null
o Merepresentasikan nilai pada sebuah atribut yang pada saat itu tidak
diketahui atau tak dapat diterapkan di tuple (baris) → merepresentasikan
absennya sebuah nilai
o Terkait dengan tidak komplitnya data
o Tidak sama dengan 0 atau spasi, yang mana termasuk nilai.
H. Views
- Tampilan dinamis dari satu atau lebih operasi relasional pada relation (tabel)
dasar untuk menghasilkan relation lain
- Relation berubah secara dinamis turun dari satu atau lebih relation dasar
- Sebuah tabel tak nyata yang tidak dibutuhkan benar-benar ada di database namun
dihasilkan berdasarkan permintaan, pada saat ada permintaan
Modul Jurusan Statistika Angkatan 57 Semester IV
Pengurus Angkatan STIS 57
Divisi Akademik
- Konten pada view didefinisikan sebagai sebuah query pada satu atau lebih
relation dasar
- Beberapa operasi pada view secara otomatis diubah menjadi operasi pada
relation dari yang diturunkan
- Views selalu dinamis
- Saat pengguna membuat perubahan ijin pada view, perubahan ini dibuat
berdasarkan relation pokok
I. Tujuan Views
- Menyajikan mekanisme keamanan yang powerful dan fleksibel dengan
menyembunyikan bagian database pada pengguna tertentu
- Mengijinkan pengguna untuk mengakses data dengan cara yang disesuaikan,
sehingga data yang sama dapat dilihat oleh pengguna yang berbeda dengan cara
yang berbeda, pada waktu yang bersamaan.
- Dapat menyederhanakan operasi kompleks pada relation dasar
J. Updating Views
- Ada batasan pada pengubahan tipe yang bisa dilakukan melalui view
- Kondisi dimana kebanyakan sistem menentukan apakah mengijinkan update
melalui view
o Update diijinkan melalui view didefinisikan menggunakan query
sederhana melibatkan satu relation dasar dan terdiri atas primary key
atau candidate key di relation dasar
o Update tidak diijinkan melalui view yang melibatkan beberapa relation
dasar
o Update tidak diijinkan melalui view melibatkan pengelompokan operasi
- Kelas pada view sudah didefinisikan bahwa secara teori tidak dapat diupdate,
secara teori dapat diupdate, dan sebagian bisa diupdate
A. Terminologi
- Relation → tabel dengan kolom dan baris
- Atribut → nama kolom pada relation (tabel)
o Informasi atau karakteristik tentang objek
- Domain → kumpulan nilai-nilai yang diijinkan pada satu atau lebih atribut
o Setiap atribut di relation didefinisikan oleh domain
o Mungkin berbeda untuk setiap atribut, atau dua atau lebih atribut
mungkin didefinisikan di domain yang sama
o Contoh : Nilai mata kuliah (bisa sama dan bisa berbeda), NIM, Nama
- Tuple → baris pada relation (tabel)
- Intension → struktur pada relation dengan domain dan batasan-batasan pada nilai
yang mungkin (biasanya tetap)
- Degree → jumlah atribut pada relation (tabel)
o Unary relation : sebuah relation dengan 1 atribut
o Binary relation : sebuah relation dengan 2 atribut
o Ternary relation : sebuah relation dengan 3 atribut
o N-ary relation : sebuah relation dengan lebih dari 3 atribut
- Cardinality → Jumlah tuple pada relation (tabel)
Modul Jurusan Statistika Angkatan 57 Semester IV
Pengurus Angkatan STIS 57
Divisi Akademik
o Cardinality pada tabel adalah property dari tuple pada relation
- Relational Database adalah kumpulan relation yang dinormalisasi dengan nama
relation yang berbeda
o Terdiri atas relation yang terstruktur dengan tepat → dinormalisasi
B. Contoh Relation
- Relation pada Branch dan Staff
- Contoh Atribut Domain
C. Terminologi Alternatif
Formal Terms Alternative 1 Alternative 2
Relation Tabel File
Tuple Baris Record
Attribute Kolom Field
D. Properties of Relations (Tabel)
- Nama relation (tabel) berbeda dari relation yang lain pada skema relation
- Setiap cell pada relation terdiri dari satu nilai
- Setiap atribut punya nama yang berbeda
- Nilai sebuah atribut berasal dari domain yang sama
- Setiap tuple berbeda; tidak ada duplicate tuple
- Order pada atribut tidak penting
- Order pada tuple tidak penting secara teori
E. Relational Keys
- Tidak ada duplicate tuple pada relation (tabel) → mengidentifikasi satu atau lebih
atribut (disebut relational keys) yang mengidentifikasi secara unik setiap tuple
pada relation
- Super key : Sebuah atribut atau kumpulan atribut (composite key) yang
mengidentifikasi secara unik sebuah tuple pada relation
- Candidate key
o Superkey(K) dimana tidak ada bagian dari superkey dengan relation
o Di setiap tuple pada relation, nilai K secara unik mengidentifikasi tuple
(uniqueness)
o Tidak ada bagian dari K yang mempunyai keunikan property
(irreducibility)
o Contoh
Candidate key
Branch→ branchNo, postcode
Modul Jurusan Statistika Angkatan 57 Semester IV
Pengurus Angkatan STIS 57
Divisi Akademik
- Primary Key : Candidate key yang dipilih untuk mengidentifikasi tuple secara
unik pada relation
- Alternate Key : Candidate key yang tidak dipilih untuk menjadi primary key
- Foreign Key: Atribut, atau sekumpulan atribut pada satu relation yang cocok
dengan candidate key pada beberapa (kemungkinan sama) relation
F. Representasi Database Relasional Skema
- Beri nama relation juga nama atribut dalam tanda kurung; Biasanya primary key
diberi garis bawah
- Contoh
o Branch (branchNo, street, city, postcode)
o Staff(staffNo,fName, lName, position, sex, DOB, salary, branchNo)
G. Integrity Constraint
- Sebuah data mempunyai dua bagian
o Bagian manipulasi, mendefinisikan tipe operasi yang diijinkan pada data
o Sekumpulan batasan integritas, yang menjamin bahwa data tersebut
akurat
- Contoh
o Domain constraint → setiap atribut mempunyai sebuah domain yang
terkait
o Integritas entitas
Pada relation dasar, tidak ada primary key pada atribut bisa saja
null
Koresponden pada relation dasar untuk entitas dalam skema
konseptual
o Integritas referensi
Jika foreign key ada dalam relation, nilai foreign key lainnya
harus sama dengan nilai candidate key pada beberapa tuple di
relation pokok atau foreign key harus sepenuhnya null
o Keserbaragaman
o Batasan umum
Aturan tambahan yang dispesifikasikan oleh pengguna atau
administrator database yang mendefinisikan atau membatasi
pada beberapa aspek perusahaan
Contoh : mengatur batas pada kerja staff di cabang
- Null
o Merepresentasikan nilai pada sebuah atribut yang pada saat itu tidak
diketahui atau tak dapat diterapkan di tuple (baris) → merepresentasikan
absennya sebuah nilai
o Terkait dengan tidak komplitnya data
o Tidak sama dengan 0 atau spasi, yang mana termasuk nilai.
H. Views
- Tampilan dinamis dari satu atau lebih operasi relasional pada relation (tabel)
dasar untuk menghasilkan relation lain
- Relation berubah secara dinamis turun dari satu atau lebih relation dasar
- Sebuah tabel tak nyata yang tidak dibutuhkan benar-benar ada di database namun
dihasilkan berdasarkan permintaan, pada saat ada permintaan
Modul Jurusan Statistika Angkatan 57 Semester IV
Pengurus Angkatan STIS 57
Divisi Akademik
- Konten pada view didefinisikan sebagai sebuah query pada satu atau lebih
relation dasar
- Beberapa operasi pada view secara otomatis diubah menjadi operasi pada
relation dari yang diturunkan
- Views selalu dinamis
- Saat pengguna membuat perubahan ijin pada view, perubahan ini dibuat
berdasarkan relation pokok
I. Tujuan Views
- Menyajikan mekanisme keamanan yang powerful dan fleksibel dengan
menyembunyikan bagian database pada pengguna tertentu
- Mengijinkan pengguna untuk mengakses data dengan cara yang disesuaikan,
sehingga data yang sama dapat dilihat oleh pengguna yang berbeda dengan cara
yang berbeda, pada waktu yang bersamaan.
- Dapat menyederhanakan operasi kompleks pada relation dasar
J. Updating Views
- Ada batasan pada pengubahan tipe yang bisa dilakukan melalui view
- Kondisi dimana kebanyakan sistem menentukan apakah mengijinkan update
melalui view
o Update diijinkan melalui view didefinisikan menggunakan query
sederhana melibatkan satu relation dasar dan terdiri atas primary key
atau candidate key di relation dasar
o Update tidak diijinkan melalui view yang melibatkan beberapa relation
dasar
o Update tidak diijinkan melalui view melibatkan pengelompokan operasi
- Kelas pada view sudah didefinisikan bahwa secara teori tidak dapat diupdate,
secara teori dapat diupdate, dan sebagian bisa diupdate
Komentar
Posting Komentar