model data relasional (3)

25
MODEL DATA RELASIONAL

Upload: fariszal-nova

Post on 15-Aug-2015

52 views

Category:

Education


14 download

TRANSCRIPT

Page 1: Model data relasional (3)

MODEL DATA RELASIONAL

Page 2: Model data relasional (3)

Apa Itu Model Relasional???

•Model Relasional adalah model basis data yang menggunakan tabel dua dimensi,  yang terdiri dari baris dan kolom untuk menggambarkan sebuah berkas data.

•Model Relasional merupakan model data yang paling banyak digunakan saat ini. Hal ini disebabkan oleh bentuknya yang sederhana dibandingkan dengan model jaringan/network atau model hirarki.

Page 3: Model data relasional (3)

Apa Itu Model Relasional???

•Contoh tabel dan keterhubungannya :Tb_Mahasiswa

Tb_MatKul Tb_Nilai

NIM Nama Alamat

09.43.167

Marissa Jl. Kemuning

09.43.053

Devina Jl. Mugirejo

08.43.111

Vivin Jl. Siti Aisyah

Kd_MatKul Mata Kuliah SKS

MKB-005 Basis Data 2

MKB-008 Simulasi Digital

2

MKD-003 Matematika 3

NIM Kd_MatKul Nilai

09.43.167

MKD-003 80

09.43.053

MKB-008 75

08.43.111

Mkb-008 90

Page 4: Model data relasional (3)

Keuntungan Model Relasional

•Berikut adalah keuntungan di dalam Model Data Relasional :

1. Bentuknya sederhana sehingga mudah dalam penggunaannya.

2. Mudah melakukan berbagai operasi data (query, update/edit, delete).

Page 5: Model data relasional (3)

Istilah-Istilah dalam Model Relasional

1. Relasi yaitu suatu hubungan antar entitas dalam bentuk kumpulan tabel untuk menyimpan suatu informasi tertentu.

2. Atribut yaitu sesuatu yang dimiliki oleh entitas. (NIM, Nama, Alamat)

3. Tupel yaitu baris pada sebuah relasi. (record)4. Domain yaitu kumpulan nilai yang valid

untuk satu atau lebih atribut. 5. Derajat yaitu jumlah atribut dalam sebuah

relasi (jumlah field)6. Cardinality yaitu jumlah tupel dalam sebuah

relasi (jumlah record)

Page 6: Model data relasional (3)

Relational Keys

•Relational key merupakan suatu kunci atribut dari relasi. Macam-macam relational key adalah sebagai berikut :

1. Candidate Key : Satu atau beberapa kolom dalam tabel yang bisa mengidentifikasi tiap baris dari tabel tersebut.

2. Primary Key : Candidate key yang digunakan untuk mengidentifikasi tuple yang unik pada suatu relasi.

3. Alternate Key : Candidate key yang tidak dipilih sebagai primary key.

4. Foreign Key : Primary key dari tabel lainnya yang terdapat di tabel saat ini.

Page 7: Model data relasional (3)

Relational Integrity Rules

•Relational Integrity Rules merupakan sekelompok aturan yang dalam pembuatan database. Yaitu :

1. Null : adalah nilai sebuah atribut yang tidak diketahui atau tidak ada pada sebuah tupel dalam tabel relasi. Misalnya pada contoh tabel Tb_Mahasiswa sebelumnya, jika seorang mahasiswa tidak diketahui alamatnya maka pada tupel nilai dari atribut alamat tersebut diisi dengan NULL.

Page 8: Model data relasional (3)

Relational Integrity Rules

2. Entity : adalah sebuah peraturan yang menyatakan bahwa setiap tabel relasi harus mempunyai sebuah primary key, dan atribut yang dipilih sebagai primary key harus mempunyai nilai dan nilai tersebut harus unik dan tidak NULL.

3. Referential Integrity : adalah sebuah peraturan yang menyatakan bahwa setiap atribut dari sebuah tabel relasi yang menunjuk ke tabel relasi lainnya harus merupakan hubungan yang valid. Berdasarkan contoh tabel Tb_MatKul dan Tb_Nilai sebelumnya, nilai atribut Kd_MatKul pada tabel Tb_Nilai harus merupakan data yang ada dan valid pada tabel Tb_MatKul yang ditunjuknya.

Page 9: Model data relasional (3)

Bahasa Pada Model Relasional

•Dalam sistem basis data, terdapat suatu kondisi dimana kita harus mendapat infomasi tertentu dari basis data tersebut. Hal yang bisa dilakukan adalah dengan menggunakan perintah melalui bahasa tertentu yaitu bahasa query. Bahasa query sendiri dikelompokkan menjadi 2, yakni :

1. Bahasa Query Formal (Aljabar Relasional dan Kalkulus Relasional)

2. Bahasa Query Komersial (QUEL, QBE dan SQL)

Page 10: Model data relasional (3)

Bahasa Query Formal

•Bahasa query yang diterjemahkan dengan menggunakan simbol-simbol matematis. Bahasa Query Formal terbagi menjadi 2, yaitu :

1. Bahasa Query Formal Prosedural (Aljabar Relasional)

2. Bahasa Query Formal Non Prosedural (Kalkulus Relasional)

Page 11: Model data relasional (3)

Bahasa Query Formal Prosedural

• Yaitu pemakai memberi spesifikasi data apa yang dibutuhkan dan bagaimana cara mendapatkannya. Contoh : Aljabar Relasional

• Aljabar Relasional yaitu dimana query diekspresikan dengan cara menerapkan operator tertentu terhadap suatu tabel / relasi.

• Terdapat lima operasi dasar dari aljabar relasional, yaitu :1. Select2. Project3. Cartesian Product4. Union5. Set Difference

Page 12: Model data relasional (3)

Bahasa Query Formal Prosedural

•SelectOperasi select berfungsi untuk menyeleksi tuple-tuple yang memenuhi predikat yang diberikan dari sebuah tabel relasi. Simbol sigma “σ” digunakan untuk menunjukkan operasi select.Contoh :σNIM = 09.43.167(Tb_Nilai)

Perintah diatas berarti memilih tupel-tupel dari tabel Tb_Nilai yang memiliki atribut NIM bernilai 09.43.167

Page 13: Model data relasional (3)

Bahasa Query Formal Prosedural

•ProjectOperasi project berfungsi untuk memilih nilai atribut-atribut tertentu saja dari sebuah tabel relasi. Simbol phi “∏” digunakan untuk menunjukkan operasi project.Contoh :Π Kd_MatKul,SKS(Tb_MatKul)

Perintah diatas berarti memilih nilai atribut Kd_MatKul dan SKS dari tabel Tb_MatKul.

Page 14: Model data relasional (3)

Bahasa Query Formal Prosedural

•Cartesian ProductOperasi cartesian product berfungsi untuk mengkombinasikan informasi yang ada dalam 2 tabel relasi dan menghasilkan sebuah tabel relasi yang baru. Simbol “x“.Contoh :Tb_Mahasiswa x Tb_MatKulPerintah diatas berarti mengkombinasikan(menggabungkan) seluruh tupel yang ada pada tabel Tb_Mahasiswa dengan tabel Tb_MatKul.

Page 15: Model data relasional (3)

Bahasa Query Formal Prosedural

•UnionOperasi union berfungsi untuk mendapatkan gabungan nilai atribut dari sebuah tabel relasi dengan nilai atribut dari tabel relasi lainnya. Simbol “∪” Contoh :Π NIM(Tb_Mahasiswa) ∪ Π NIM(Tb_Nilai)

Perintah diatas berarti menggabungkan hasil dari nilai atribut NIM dari Tb_Mahasiswa dengan tabel Tb_Nilai.

Page 16: Model data relasional (3)

Bahasa Query Formal Prosedural

•Set DifferenceOperasi set difference berfungsi untuk mendapatkan nilai yang ada dalam sebuah tabel relasi, tapi tidak ada dalam tabel relasi lainnya. Simbol “-“Π NIM(Tb_Mahasiswa) – Π NIM(Tb_Nilai)

Perintah diatas berarti mendapatkan nilai atribut Nama yang terdapat di tabel Tb_Mahasiswa, tapi tidak terdapat di tabel Tb_Nilai.

Page 17: Model data relasional (3)

Bahasa Query Formal Non Prosedural

•Yaitu pemakai menspesifikasikan data apa yang dibutuhkan tanpa menspesifikasikan bagaimana untuk mendapatkannya. Contoh : Kalkulus Relasional

•Kalkulus relasional adalah dimana query menjelaskan set tuple yang diinginkan dengan cara menjelaskan predikat tuple yang diharapkan.

Page 18: Model data relasional (3)

Bahasa Query Komersial

•Bahasa Query yang dirancang sendiri oleh programmer menjadi suatu program aplikasi agar pemakai lebih mudah menggunakannya (user friendly).

•Bahasa Query Komersial terdiri dari :1. QUEL2. QBE3. SQL (Overview SQL)

Page 19: Model data relasional (3)

Bahasa Query Komersial

• QUEL (Query Language)Bahasa ini dipergunakan secara berdiri sendiri denganmenuliskan instruksi ke prosesor QUEL, atau disisipkan ke dalam bahasa pemrograman C. Di dalam bahasa C, instruksi QUEL dimulai dengan tanda ##, sehingga dapat diterima oleh prosesor.

• QUEL dibagi atas :1. DDL

- CREATE : membuat tabel- INDEX : membuat indeks- DEFINE VIEW : membuat view- DESTROY : menghapus tabel, indeks atau view- MODIFY : merubah struktur tabel/indeks

Page 20: Model data relasional (3)

Bahasa Query Komersial

Contoh : CREATE Tb_Mahasiswa(NIM= TEXT(10), Nama=TEXT(20), Alamat=TEXT(50))

2. DML- RETRIEVE : menampilkan data- REPLACE : mengupdate data- DELETE : menghapus record- APPEND : memasukkan record baru

Page 21: Model data relasional (3)

Bahasa Query Komersial

• QBE (Query by Example)QBE dapat dipergunakan untuk mengerjakan banyakfungsi-fungsi seperti yang ada pada SQL, hanya adaperbedaan dalam tata bahasanya. QBE tidak mempergunakan pernyataan-pernyataan dalam bahasa Inggris, tetapi mempergunakan editor layar khusus dan langsung membuat query di terminal tersebut.

• Perintah yang digunakan adalah :P.(print) : menampilkan dataI. (insert) : memasukkan record baruD. (delete) : menghapus recordU. (update) : merubah record

Page 22: Model data relasional (3)

Overview SQL

•SQL (Structured Query Language)SQL (Structured Query Language) adalah sebuah bahasa yang dipergunakan untuk mengakses data dalam basis data relasional. Bahasa ini merupakan bahasa standar yang digunakan dalam manajemen basis data relasional. Saat ini hampir semua server basis data yang ada mendukung bahasa ini untuk melakukan manajemen datanya.

Page 23: Model data relasional (3)

Overview SQL

•Komponen-komponen SQL :1. Data Definition Language (DDL) : Create,

Drop, Alter2. Data Manipulation Language (DML) : Select,

Insert, Update, Delete.

Page 24: Model data relasional (3)

Data Definition Language (DDL)

•DDL digunakan untuk mendefinisikan, mengubah, serta menghapus basis data dan objek-objek yang diperlukan dalam basis data.

•DDL yang digunakan adalah :1. CREATE : Digunakan untuk membuat objek

(database / tabel) baru2. USE : Digunakan untuk menggunakan objek

tersebut3. ALTER : Digunakan untuk mengubah objek

yang sudah ada 4. DROP : Digunakan untuk menghapus objek.

Page 25: Model data relasional (3)

Data Manipulation Language

•DML digunakan untuk memanipulasi data yang ada dalam suatu tabel.

•Perintah yang umum dilakukan adalah:1. SELECT : Digunakan untuk menampilkan

data2. INSERT: Digunakan untuk menambahkan

data baru3. UPDATE : Digunakan untuk mengubah data

yang sudah ada4. DELETE : Digunakan untuk menghapus data