Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
Model Basis Data Relasional
IK203 Sistem Basis Data Pertemuan #3 Suryo Widiantoro, ST, MMSI, M.Com(IS)
2
Model data relational memudahkan designer untuk fokus pada perwujudan lojikal dari data dan relationship yang dimiliki, dan tidak memusingkan detil penyimpanan secara fisikal Mobil automatic >< mobil manual
3
Capaian Pembelajaran Mahasiswa/i mampu menjelaskan model basis data relational: Konsep dasar relation Key dan jenis-jenisnya Integrity rules Functional dependencies Relationship dalam data relational Index
4
Konsep dasar relasi (relation)
5
Relasi (Relation ) Relasi adalah tabel 2-dimensi berisi baris dan kolom yang memiliki karakteristik: Baris berisi data mengenai sebuah entity Kolom berisi data mengenai attribute dari entity Sel dalam tabel berisi sebuah nilai tunggal Semua data dalam sebuah kolom berjenis sama Setiap kolom memiliki sebuah nama yang unik Urutan kolom tidaklah penting Urutan baris tidaklah penting Tidak ada 2 baris yang memiliki kumpulan data yang bernilai identik
6
Contoh relation EMPLOYEE
7
Contoh tabel nonrelational dengan banyak nilai dalam satu sel
8
Contoh tabel nonrelational dengan kolom dengan isi nilai berbeda
9
Format Deskripsi Relation
NAMA_RELATION (KolomKe1, KolomKe2, … , KolomKen) Contoh: EMPLOYEE (EmployeeNumber, FirstName, LastName, Department, , Phone) Disebut juga sebagai relational schema, yaitu perwujudan tabel database dalam bentuk teks dimana setiap tabel dituliskan namanya diikuti daftar attribute dalam tanda kurung bentuk kata tunggal
10
Pemakaian Istilah
11
Jenis-jenis kunci (key)
12
Kunci (Key ) Sebuah key adalah satu atau lebih kolom dalam sebuah relation yang digunakan untuk mengidentifikasi sebuah baris
13
? Non-unique key Query menghasilkan lebih dari 1 baris Unique key
Query menghasilkan 1 baris yang unik
14
Composite Key Sebuah key yang terdiri dari dua atau lebih attribute disebut sebagai composite key Composite keys bisa saja unique atau nonunique Contoh: (LastName, Department) (LastName, FirstName, Department)
15
Candidate Key Candidate key adalah key yang secara unik mengidentifikasi setiap baris dalam sebuah relation Candidate key dapat berupa key kolom-tunggal atau bisa berupa composite key
16
Primary Key Primary key adalah candidate key yang telah dipilih sebagai key utama yang akan digunakan oleh DBMS untuk secara unik mengidentifikasi setiap baris di dalam sebuah relation
17
Perhatikan deskripsi relation berikut:
EMPLOYEE (EmployeeNumber, FirstName, LastName, Department, , Phone) Yang bisa menjadi candidate key: EmployeeNumber adalah unique key adalah unique key composite key (FirstName, LastName, DepartmentName) adalah unique key
18
Yang layak menjadi primary key adalah EmployeeNumber sehingga deskripsi dituliskan sebagai berikut:
EMPLOYEE (EmployeeNumber, FirstName, LastName, Department, , Phone) PK diberi garis bawah
19
Surrogate Key Surrogate key adalah sebuah kolom dengan identifier unik yang ditambahkan oleh DBMS pada sebuah tabel untuk menjadi primary key Nilai unik pada surrogate key diberikan oleh DBMS setiap kali sebuah baris dibuat, dan nilainya tidak pernah berubah
20
surrogate key menjadi primary key
Misal ada relation dengan deskripsi sebagai berikut: PROPERTY (Street, City, State, ZIP, OwnerID) Untuk memudahkan maka ditambah surrogate key sebagai primary key sehingga deskripsi relation menjadi: PROPERTY (PropertyID, Street, City, State, ZIP, OwnerID) surrogate key menjadi primary key
21
Foreign Key Attribute yang menjadi primary key pada relation pertama bila digunakan pada relation kedua maka attribute yang terdapat di relation kedua disebut sebagai foreign key
22
Misal terdapat dua relation dideskripsikan sebagai berikut:
EMPLOYEE (EmployeeNumber, FirstName, LastName, Department, , Phone) dan DEPARTMENT (DepartmentName, BudgetCode, OfficeNumber, DepartmentPhone) Bila attribute Department pada EMPLOYEE berrelasi dengan attribute DepartmentName (PK) pada DEPARTMENT maka Department pada EMPLOYEE menjadi foreign key milik DEPARTMENT
23
referential integrity constraint
Deskripsinya menjadi: EMPLOYEE (EmployeeNumber, FirstName, LastName, Department, , Phone) DEPARTMENT (DepartmentName, BudgetCode, OfficeNumber, DepartmentPhone) dan Department pada EMPLOYEE harus ada dalam DepartmentName pada DEPARTMENT FK dicetak miring referential integrity constraint
24
Referential Integrity Constraint
Dalam kebanyakan kasus, integrity rules diperlukan karena sangat penting memastikan bahwa setiap nilai pada sebuah foreign key cocok/sesuai dengan nilai pada primary key Untuk menjaga integrity ini maka null value tidak diperbolehkan pada primary key dan sedapat mungkin harus dihindari
25
Null Value Keberadaan null value dalam sebuah tabel biasanya adalah indikasi akan buruknya rancangan database Null value, bila digunakan sembarangan, dapat menyebabkan masalah karena memiliki beberapa makna. Misalnya sebuah null value dapat berarti: Nilai yang tidak diketahui dari attribute Nilai yang diketahui dari attribute, namun hilang Sebuah kondisi yang “not applicable”
26
REMEMBER THIS! A null is no value at all. It does not mean a zero or a space. A null is created when you press the Enter key or the Tab key to move to the next entry without making a prior entry of any kind. Pressing the Spacebar creates a blank (or a space)
27
Misal ada tiga relation dideskripsikan sebagai berikut:
CUSTOMER (CustomerNumber, CustomerLastName, CustomerFirstName, Phone) COURSE (CourseNumber, Course, CourseDate, Fee) ENROLLMENT (CustomerNumber, CourseNumber, AmountPaid) Dengan dua referential integrity constraint: CustomerNumber pada ENROLLMENT harus ada dalam CustomerNumber pada CUSTOMER dan CourseNumber pada ENROLLMENT harus ada dalam CourseNumber pada COURSE
28
Ketergantungan fungsional functional dependencies
29
Misal kita membeli permen yang satuannya berharga Rp100, sehingga bisa dihitung dengan rumus:
HargaPermen = JumlahPermen x Rp100 Secara fungsi maka HargaPermen tergantung pada JumlahPermen yang dibeli. Hal ini dinyatakan sebagai functional dependency yang dituliskan: JumlahPermen HargaPermen Dengan kata lain JumlahPermen menentukan HargaPermen, dimana variabel di sisi kiri (JumlahPermen) disebut sebagai determinant untuk HargaPermen
30
Bila dimodifikasi menjadi:
HargaTotal = JumlahUnit x HargaUnit Dimana HargaTotal bergantung pada JumlahUnit dan HargaUnit: (JumlahUnit, HargaUnit) HargaTotal Composite (JumlahUnit, HargaUnit) adalah determinant untuk HargaTotal
31
Istilah functional dependence dapat dinyatakan secara sederhana seperti berikut:
Attribute A Attribute B Attribute B secara fungsional bergantung pada attribute A bila setiap nilai di kolom A menentukan satu dan hanya satu nilai di kolom B
32
Functional dependencies ini nantinya dapat digunakan untuk menentukan attribute mana pada sebuah relation yang menjadi candidate key untuk primary key
33
EmployeeNumber FirstName, LastName, Department, Email, Phone
(LastName, Department) EmployeeNumber, FirstName, , Phone (FirstName, LastName, Department) EmployeeNumber, , Phone
34
Relationship data relational
35
1:M relationship adalah pemodelan relational yang ideal
1:M relationship adalah pemodelan relational yang ideal. Jenis relationship ini yang seharusnya menjadi norma dalam rancangan database relational 1:1 relationship biasanya jarang terjadi dalam rancangan database relational M:N relationship tidak dapat diimplementasikan dalam model relational. Selanjutnya M:N relationship dapat diubah menjadi dua 1:M relationship
36
indeks
37
Indeks adalah sebuah pengaturan yang terurut yang digunakan untuk secara lojik mengakses baris dalam sebuah tabel
38
Komponen Indeks
39
penutup
40
Terima Kasih
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.