02 basisdata relational

13
1/27 Basis Data Lecturer: Dr. Said Mirza Pahlevi, M.Eng. 2/27 Basis Data Relasional Pertemuan Kedua

Upload: arie-sigit

Post on 03-Jul-2015

137 views

Category:

Documents


9 download

TRANSCRIPT

Page 1: 02 Basisdata Relational

1/27

Basis Data

Lecturer: Dr. Said Mirza Pahlevi, M.Eng.

2/27

Basis Data Relasional

Pertemuan Kedua

Page 2: 02 Basisdata Relational

3/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Teminologi Model Relasional

Relation: sebuah tabel dengan baris dan kolom

Hanya diaplikasikan pada struktur lojik basis data, tdk pd struktur fisik

Oleh karenanya, pada level external dan conceptual

Attribute: field/kolom yang diberi nama pada tabel

Digunakan untuk menyimpan informasi tentang objek yang akandirepresentasikan pada basis data

Domain: sekumpulan nilai-nilai yg mungkin untuk satu/lebih field

Setiap field pada tabel didefinisikan dalam sebuah domain

Dapat berbeda untuk setiap field, atau dua atau lebih field dapatdidefinisikan pada domain yang sama

Dr. Said Mirza Pahlevi

4/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Contoh Relation

Dr. Said Mirza Pahlevi

Page 3: 02 Basisdata Relational

5/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Terminologi Model Relasional

Tuple: sebuah baris pada relation/tabel

Dapat muncul dlm urutan sembarang dan tabel tetap sama/tidakberubah

Tuple disebut sebagai ekstensi/keadaan dari tabel

Intension: struktur tabel dengan domain dan restriksi padanilai-nilai yang mungkin

Degree: jumlah atribut/field pada sebuah tabel

Tabel unary: tabel dengan satu field

Tabel binary: tabel dengan dua field

Tabel ternary: tabel dengan tiga field

N-ary relation: tabel dengan lebih dari tiga field

Dr. Said Mirza Pahlevi

6/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Terminologi Model Relasional

Cardinality: jumlah tuple/baris pada sebuah tabel

Relational Database: kumpulan dari tabel-tabel

yang telah dinormalisasi dengan nama yang

berbeda

Dr. Said Mirza Pahlevi

Page 4: 02 Basisdata Relational

7/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Contoh Tabel Branch & Staff

Dr. Said Mirza Pahlevi

8/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Contoh Domain Field

Dr. Said Mirza Pahlevi

Page 5: 02 Basisdata Relational

9/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Latihan 1

Tuple?

Cardinality?

Degree?

Dr. Said Mirza Pahlevi

10/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Terminologi Alternatif

Terminologi formal Alternatif 1 Alternatif 2

Relation Table File

Tuple Row Record

Attribute Column Field

Dr. Said Mirza Pahlevi

Page 6: 02 Basisdata Relational

11/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Sifat-Sifat Tabel

Pada skema relasional tidak ada tabel yang memilikinama yang sama.

Setiap cell (perpotongan kolom & baris) pada tabelberisikan hanya satu nilai (atomic single value).

Setiap field pada suatu tabel memiliki nama yang berbeda.

Nilai-nilai pada sebuah field semuanya berasal daridomain yang sama.

Dr. Said Mirza Pahlevi

12/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Sifat-Sifat Tabel

Setiap tuple adalah berbeda (tidak ada duplikasi)

Urutan field tidak merubah makna tabel

Urutan tuple juga tidak merubah makna tabel

Dr. Said Mirza Pahlevi

Page 7: 02 Basisdata Relational

13/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Key Relasional

Superkey

Satu atau lebih field yang secara unik mengidentifikasi sebuah tupledalam sebuah tabel.

Candidate Key

Superkey (K) sedemikian hingga tidak ada himpunan bagiannya ygdapat menjadi superkey lagi dalam tabel tsb.

Pada setiap tuple dari R, nilai-nilai dari K secara unikmengidentifikasi tuple tersebut (uniqueness)

Tidak ada himpunan bagian dari K yang memiliki sifat unik seperti itu(irreducibility)

Dr. Said Mirza Pahlevi

14/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Key Relasional

Superkey {branchNo, postcode}

Candidate keys branchNo dan staffNo

Catatan Instance tabel tidak dpt

digunakan untuk mem-buktikan candidate key

Identifikasi Candidate key• Ketahui arti dalam

penggunaan field

Dr. Said Mirza Pahlevi

Branch

Staff

Page 8: 02 Basisdata Relational

15/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Key Relasional

Primary Key (Key Primer) Candidate key yang dipilih untuk mengidentifikasi tuple secara

unik pada tabel

Alternate Keys (Key Alternatif) Candidate key yang tidak dipilih sebagai primary key

Foreign Key (Key Asing) Field atau sekumpulan field dalam satu tabel yang sesuai

dengan candidate key dari tabel lain

Composite key Key yang terdiri dari satu atau lebih attribute/field

Dr. Said Mirza Pahlevi

16/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Foreign Key

Field atau

sekumpulan field

dalam satu tabel

yang sesuai

dengan candidate

key dari tabel lain

Mana Foreign

Key-nya??

Dr. Said Mirza Pahlevi

Branch

Staff

Page 9: 02 Basisdata Relational

17/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Merepresentasikan Skema Basis

Data Relasional

Nama tabel diikuti oleh nama field yang berada

dalam kurung; Biasanya primay key digarisbawahi

Model conceptual atau skema conceptual adalah semua

skema seperti demikian untuk basis data tersebut

Contoh:

Branch(branchNo, street, city, postcode)

Staff(staffNo, fName, lName, position, sex, DOB, salary,

branchNo)

Dr. Said Mirza Pahlevi

18/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Batasan/Aturan Integritas

(Integrity Constraints)

1. Null

2. Integritas Entitas (Entity Integrity)

3. Integritas Referensial (Referential Integrity)

4. Batasan/Aturan Umum (General Constraints)

Dr. Said Mirza Pahlevi

Page 10: 02 Basisdata Relational

19/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

1. NULL

Merepresentasikan nilai untuk sebuah field yang

mana pada saat sekarang adalah tidak diketahui

atau tidak dapat diaplikasikan pada tuple

Berhubungan dengan data yang tidak lengkap

atau yang tidak biasa

Merepresentasikan ketidakberadaan nilai dan tidak

sama dengan nol atau spasi yang merupakan

sebuah nilai

Dr. Said Mirza Pahlevi

20/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

2. Integritas Entitas (Entity

Integrity)

Pada sebuah tabel dasar (base relation), tidak ada

field dari primary key yang bernilai null

Tabel dasar adalah sebuah entitas pada skema

conceptual

Dr. Said Mirza Pahlevi

Page 11: 02 Basisdata Relational

21/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

3. Integritas Referensial

(Referential Integrity)

Jika sebuah tabel memiliki foreign key, maka nilai

foreign key tsb harus sesuai dgn nilai candidate

key dari suatu tuple pada tabel tuple tsb atau

harus null.

Dr. Said Mirza Pahlevi

22/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

4. Batasan/Aturan Umum

(General Constraints)

Aturan tambahan yang ditetapkan oleh pemakai

atau admin basis data yang mendefinisikan atau

membatasi suatu aspek dari perusahaan.

Contoh: menetapkan limit atas dari jumlah pegawai yang

dapat bekerja pada suatu cabang adalah maksimum 100

orang.

Dr. Said Mirza Pahlevi

Page 12: 02 Basisdata Relational

23/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Penampakan (View)

Tabel Dasar (Base Relation)

Tabel yang berkorespon dengan sebuah entitas pada

skema conceptual yang mana tuplenya secara fisik

disimpan pada basis data.

View

Hasil dinamis dari satu/lebih operasi relasional yg ber-

operasi pada tabel dasar untuk menghasilkan tabel lain.

Dr. Said Mirza Pahlevi

24/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Latihan 2: View

Tuliskan hasil dari view dari dua tabel di bawah ini:

Dr. Said Mirza Pahlevi

branch staff

Page 13: 02 Basisdata Relational

25/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Penampakan (View)

Tabel virtual yang fisiknya tidak ada di dalam basis data tetapi dibuat pada saat diminta.

Isi dari sebuah view didefinisikan sebagai kueriterhadap satu atau lebih tabel dasar.

SELECT branchNo, city, lName FROM branch, staff WHERE branch.branchNo=staff.branchNo

View adalah dinamis, artinya perubahan pada field tabel dasar (yang digunakan view) akan direfleksikandengan seketika

Dr. Said Mirza Pahlevi

26/27Fakultas Teknologi Informasi – Universitas Persada Indonesia YAI

Tujuan dari View

Menyediakan mekanisme keamanan yang baikdan fleksibel dengan menyembunyikan bagianbasis data dari pemakai tertentu.

Mengizinkan pemakai untuk mengakses data sesuai dengan keinginannya, sehingga data yang sama dapat dilihat oleh pemakai berbeda dengantampilan yang berbeda pada satu waktu.

Dapat mempermudah operasi kompleks terhadaptabel dasar.

Dr. Said Mirza Pahlevi

end!