Sistem Basis Data Konsep Database Relasional

Slides:



Advertisements
Presentasi serupa
Aljabar Relasional Materi pertemuan.
Advertisements

SQL – DML.
ALJABAR RELATIONAL Materi Pertemuan 22,23 dan 24.
PEMROSESAN FILE DAN KONSEP MANAJEMEN DATA
MODEL ENTITY-RELATIONSHIP
Bahasa Pada Model Data Relasional
ALJABAR RELASIONAL (RELATIONAL ALGEBRA)
ALJABAR RELASIONAL Mata Kuliah : Database 1 Dosen : Tessy Badriyah.
Pengantar Basis Data Sumber :
MODEL DATA.
PEMROGRAMAN BASIS DATA
Model & Aljabar Relasional
Aljabar Relasional.
Aljabar Relasional Materi pertemuan.
ALJABAR RELASIONAL BASIS DATA Team Teaching Basis Data Oleh
Aljabar Relasional.
Model Relasional Merupakan hubungan logika antar data dalam basis data dalam bentuk tabel-tabel dimensi dua yang terdiri dari baris dan kolom yang menunjukkan.
PENJELASAN UMUM SILABUS SISTEM BASIS DATA
Aljabar Relasional Materi pertemuan 21.
PERTEMUAN 13 Sistem Basis Data Presented by :
4.10 Relasi n-ary Relasi n-ary adalah relasi yang menghubungkan
Karakteristik, Komponen, Primary Key
Modul 03 Relational Model
Oleh: Henry Primandari,S.Kom STMIK-MDP Palembang
Sesi V Aljabar & Kalkulus Relasional
Aljabar Relasional Materi pertemuan.
Aljabar Relasional.
4. RELASI.
ALJABAR RELATIONAL.
Pertemuan 4 – Sistem Basis Data.  Pada model relasional, basis data akan “disebar” atau dipilah-pilah ke dalam berbagai tabel dua dimensi. Setiap tabel.
ALJABAR DAN KALKULUS RELASIONAL
Aljabar Relasional Materi pertemuan.
Basis Data Bab VIII Bahasa Kueri Presented by Mulyono, S.Si, M.Kom
Model Basis Data Relasional
Pertemuan Ke-6 Aljabar Relasional
Model Data Relasional.
Outline: Relational Data Model Entity Relationship Diagram
Basis Data dan SBP Disusun Oleh : Lily Wulandari.
Aljabar Relasional (Relational Algebra)
ALJABAR RELASIONAL
Daniel Damaris Novarianto S. UNIV. GUNADARMA
Operasi Relasional Basis Data
ALJABAR RELASIONAL BASIS DATA I/2009-GENAP
ALJABAR RELASIONAL DAN KALKULUS RELASIONAL
Aljabar Relational (Relational Algebra) MEETING 6
SISTEM BASIS DATA STMIK BANI SALEH BEKASI Salim
Model Relational DATABASE
Management Information System
SQL (2) (Structure Query Language)
Presented by Team Basis Data
Operasi Relasional Basis Data
Aljabar Dan Kalkulus Relasional
Aljabar Relasional.
Perancangan Fisik Basis Data
MODEL ENTITY-RELATIONSHIP
SISTEM BASIS DATA TERSEBAR
Aljabar Relational (Relational Algebra) MEETING 6
PEMROGRAMAN BASIS DATA
Aljabar Relational.
MODEL DATA RELASIONAL (1)
Basis Data - Udinus Semarang
MODEL RELASIONAL BASIS DATA I/2011-GANJIL
MODEL RELASIONAL BASIS DATA I/2011-GANJIL
Model Data Relasional.
SISTEM BASIS DATA TERSEBAR
Basis Data Bahasa Kueri Basis Data
Model dan Aljabar Relasional
ALJABAR RELASIONAL (LANJUTAN)
Basis Data Bahasa Kueri Basis Data
Pengantar Teknologi SIM 2 (pertemuan 6)
Transcript presentasi:

Sistem Basis Data Konsep Database Relasional Ika Menarianti

Relational Database Management Systems (RDBMS) Didefinisikan sebagai suatu himpunan relasi Data secara logika, dianggap sebagai tabel. Tabel adalah struktur data logis yang diasumsikan dengan menyimpan data yang direpresentasikan oleh database. Tabel bukan struktur fisik dan setiap tabel punya nama unik. Tabel memuat sejumlah kolom atau atribut yang sudah ditentukan. Jumlah total kolom disebut derajat (degree). Data dalam tabel disebut himpunan baris atau n-tuple dengan n adalah jumlah atribut tabel.

Seluruh baris dalam sebuah tabel memilliki format yang sama dan merepresentasikan beberapa objek tertentu atau hubungan yang ada pada dunia nyata. Jumlah total baris dalam tabel pada suatu waktu tertentu disebut kardinalitas tabel. Kata field dan record digunakan sebagai sinonim untuk kata atribut dan baris. Nama atribut atau Kolom A1 A2 A3 ...An a11 a12 .... a1n an1 an2 ann Nilai baris atau tupel

Isi sebuah tabel dalam suatu tertentu adalah snapshot. Tabel tanpa baris disebut tabel kosong. Proses menyelipkan tupel untuk pertama kalinya disebut mempopulasikan tabel. Setiap kolom dari sebuah tabel terdapat satu himpunan kemungkinan nilai yang disebut domain. Domain memuat seluruh nilai yang diperbolehkan yang dapat muncul didalam kolom. Domain dinotasikan dari setiap kolom tertentu disebut DOM(nama kolom)

Contoh 1 Diketahui relasi EMPLOYEE, tentukan derajat dan kardinalitasnya. Untuk atribut tentukan domainnya! Id Last_Name First_Name Department Salary 5552 Martin Nicholas Accounting 55000 3971 Bernad Ben Marketing 33500 9078 Adams Larry Human Resources 37500 Terdapat 5 atribut: Id, Last_Name, First_Name, Department dan Salary. Domain yang mungkin adalah: Dom(Id), Dom(Last_Name), Dom(First_Name), Dom(Department) dan Dom(Salary).

Contoh 2 Untuk relasi CUSTOMER ORDER dibawah ini, manakah nilai individual t(A) jika t merupakan sembarang tupel dari A adalah sembarang relasi? ID Date_Ordered Date_Shipped Payment_type 1 08/11/1999 08/12/1999 Cash 2 Purchase order 3 08/14/1999 08/15/1999 credit Jika: t sebagai tupel pertama, maka t(ID)=1, t(Date_Ordered)=08/11/1999, t(Date_Shipped)=08/12/1999 dan t(payement_type)= cash. t sebagai tupel kedua, maka t(ID)=2, t(Date_Ordered)=08/12/1999, t(Date_Shipped)=08/12/1999 dan t(payement_type)= purchase order. Dimana setiap tupel memiliki 4 entri, satu entri untuk setiap kolom.

Kesimpulan Bilamana sebuah relasi direpresentasikan ke dalam tabel, maka berlaku kondisi: Tabel memiliki nama yag unik Setiap kolom ditabel memiliki sebuah nama yang unik Urutan kolom dalam tabel boleh menyimpang (irelevan) Seluruh baris di dalam tabel memiliki format dan jumlah entri yang sama Nilai dalam setiap kolom adalah milik domain yang sama Setiap entri disetiap tupel relasi harus berupa satu nilai tunggal (single value) Urutan baris menjadi irelevan karena diidentifikasikan oleh isinya dan bukan oleh posisinya didalam tabel. Tidak ada dua baris atau tupel yang keseluruhan entrinya identik

Definisi Matematis dari Relasi Diketahui sebuah himpunan berhingga dari atribut A1, A2, A3, ... An, disebut skema relasional R yang merupakan himpunan yang terbentuk dari seluruh atribut. Bahwa R={A1, A2, A3, ... An}, terdapat sebuah himpunan yang tidak kosong Di, (1 ≤ i ≤ n) yang sebut Domain atribut Di dinotasikan sebagai Dom(A). Anggap D sebagai himpunan baru yang didefinisikan sebagai gabungan dari seluruh domain atribut, 𝐷=𝐷 1 ∪ 𝐷 2 … ∪𝐷 𝑛 . Didefinisikan relasi r dalam skema relasional R untuk pemetaan {t1, t2, ... tk}, maka t 𝐴 𝑖 ∈𝐷𝑜𝑚(𝐴)

Operator Relasional Operator relasional sebagai himpunan operator yang memungkinkan untuk memanipulasi database. Operator relasional dikatakan memenuhi sifat penutup (closure property) karena dioperasikan terhadap satu atau lebih relasi untuk menghasilkan relasi-relasi baru.

Simbol operator operasional Untuk menggunakan operator operasional digunakan: Simbol logika: ∃ (𝑡𝑒𝑟𝑑𝑎𝑝𝑎𝑡) ∀ (𝑢𝑛𝑡𝑢𝑘 𝑠𝑒𝑚𝑢𝑎) ∨ 𝑎𝑡𝑎𝑢 ∧ 𝑑𝑎𝑛 ∼(𝑏𝑢𝑘𝑎𝑛) Simbol teori himpunan: ∈ 𝑎𝑛𝑔𝑔𝑜𝑡𝑎 𝑑𝑎𝑟𝑖 , ⊂ ℎ𝑖𝑚𝑝𝑢𝑛𝑎𝑛 𝑏𝑎𝑔𝑖𝑎𝑛 𝑑𝑎𝑟𝑖 , ∅ (ℎ𝑖𝑚𝑝𝑢𝑛𝑎𝑛 𝑘𝑜𝑠𝑜𝑛𝑔) ∋𝑎𝑡𝑎𝑢 / (𝑠𝑒𝑑𝑒𝑚𝑖𝑘𝑖𝑎𝑛 𝑠𝑒ℎ𝑖𝑛𝑔𝑔𝑎) Simbol negasi: ∉(𝑏𝑢𝑘𝑎𝑛 𝑎𝑛𝑔𝑔𝑜𝑡𝑎 𝑑𝑎𝑟𝑖)

Operator Selection Anggap r adalah relasi dalam skema R, A adalah atribut tertentu dari r, dan elemen utama a dari Dom(A). Selection dari r dalam atribut A untuk elemen tertentu a adalah himpunan tupel t dari relasi r sehingga t(A)=a. Selection dari r dalam A dinotasikan dengan 𝜎 𝐴 =a r . Secara matematis: 𝜎 𝐴=𝑎 𝑟 = 𝑡 ∈ 𝑟 𝑡 =𝑎

Contoh 𝜎 𝐸𝑀𝑃_𝐷𝐸𝑃𝑇=10 (𝐸𝑀𝑃𝐿𝑂𝑌𝐸𝐸) Diketahui relasi EMPLOYEE , carilah seluruh informasi dari tabel yang bekerja untuk department 10. EMP_ID EMP_NAME EMP_MGR TITLE EMP_DEPT 1234 Green President 40 4567 Gilmore Senior VP 1045 Rose` Director 10 9876 Smith Acountant 𝜎 𝐸𝑀𝑃_𝐷𝐸𝑃𝑇=10 (𝐸𝑀𝑃𝐿𝑂𝑌𝐸𝐸) EMP_ID EMP_NAME EMP_MGR TITLE EMP_DEPT 1045 Rose` 4567 Director 10 9876 Smith Acountant

Operator Projection Projection dari relasi r terhadap suatu himpunan X dari atributnya, dinotasikan dengan 𝜋 𝑥 𝑟 , didapatkan dengan cara mengeliminasi kolom r yang tidak ditandai dengan X kemudian membuang setiap tupel yang terduplikasi. Anggaplah r sebagai sebuah relasi dengan skema relasional R dan anggap X= {A1, A2, ... Ak}, sebagai sebuah subhimpunan dari atributnya maka: 𝜋 𝑥 𝑟 = 𝑡(𝑋) 𝑡 ∈𝑟

Contoh Dengan tabel DEPARTMENT, dimanakah lokasi department yang berbeda? ID NAME LOCATION 10 Accounting New York 30 Computing 50 Marketing Los Angeles 60 Manufacturing Miami 90 Sales akan menentukan nilai yang berbeda dari kolom LOCATION, maka perlu mencari projection dari tabel DEPARTMENT dalam atribut LOCATION 𝜋 𝐿𝑂𝐶𝐴𝑇𝐼𝑂𝑁 (𝐷𝐸𝑃𝐴𝑅𝑇𝑀𝐸𝑁𝑇) LOCATION New York Los Angeles Miami

Dapatkah menyebutkan jumlah lokasi setelah dieliminasi? Jawab: tidak, karena jumlah lokasi telah dieliminasi Tentukan nama dan lokasi yang berbeda dari tabel DEPARTMENT! NAME LOCATION Accounting New York Computing Marketing Los Angeles Manufacturing Miami Sales

Operator Equijoin Operator biner untuk mengkombinasikan dua relasi yang tidak perlu berbeda. Join memuat seluruh tupel yang dihasilkan dari perangkaian tupel relasi pertama dengan tupel relasi kedua yang memiliki nilai identik untuk sebuah himpunan atribut X.

𝒓 𝑱𝒐𝒊𝒏 𝒔= 𝒓𝒔 𝒔 ∈𝒓 𝒅𝒂𝒏 𝒔 𝒅𝒂𝒏 𝒓 𝑹∩𝑺 =𝒔(𝑹∩𝑺) Anggap r adalah sebuah relasi himpunan atribut R dan s adalah relasi lain dari himpunan S. R dan S memiliki beberapa atribut umum dan anggaplah X sebagai himpunan dari atribut umum. 𝑅∩𝑆=𝑋. Join antara r dan s, dinotasikan dengan 𝒓 𝑱𝒐𝒊𝒏 𝒔. Secara matematis: 𝒓 𝑱𝒐𝒊𝒏 𝒔= 𝒓𝒔 𝒔 ∈𝒓 𝒅𝒂𝒏 𝒔 𝒅𝒂𝒏 𝒓 𝑹∩𝑺 =𝒔(𝑹∩𝑺)

Contoh Joinkan tabel DEPARTMENT dan tabel EMPLOYEE. Tulis Kemungkinan query user yang dapat dipenuhi! Dapatkah kedua tabel dijoinkan? ID NAME LOCATION 100 Accounting Miami 200 Marketing New York 300 Sales DEPARTMENT ID NAME DEPT TITLE 100 Smith Sales Clerk 200 Jones Marketing 300 Martin Acounting 400 Bell Sr. Accountant EMPLOYEE

𝐷𝐸𝑃𝐴𝑅𝑇𝑀𝐸𝑁𝑇 𝐽𝑜𝑖𝑛 𝐸𝑀𝑃𝐿𝑂𝑌𝐸𝐸. Jawab Join untuk kedua tabel dinotasikan 𝐷𝐸𝑃𝐴𝑅𝑇𝑀𝐸𝑁𝑇 𝐽𝑜𝑖𝑛 𝐸𝑀𝑃𝐿𝑂𝑌𝐸𝐸. DEPT ID DEPARTMENT NAME LOCATION EMPLOYEE ID EMPLOYEE NAME TITLE 100 Accounting Miami 300 Martin Clerk 400 Bell Sr. Accountant 200 Marketing New York Jones Sales Smith Tidak dapat dijoinkan, karena atribut ID nya berbeda

Operasi Himpunan dalam Relasi Operasinya adalah: Union (gabungan) Intersection (irisan) Difference (selisih) Perkalian Cartesius

UNION ( GABUNGAN) Diketahui dua relasi r(R) dan s(S), dinotasikan dengan 𝑟∪𝑠, adalah himpunan seluruh tupel yang ada di r atau di s. Didefinisikan: 𝑟∪𝑠= 𝑡 𝑡 ∈𝑟 ∨𝑡 ∈𝑠

contoh Diketahui relasi-relasi dibawah ini, carilah union dari kedua relasi! C_PROGRAMMER Emp_id Last_Name First_Name Project Department 102 Venable Mark E-Commerce Sales Department 201 Cordani John Firewall Information Tecnology 302 Serrano Areant JAVA_PROGRAMMER Emp_id Last_Name First_Name Project Department 202 Barnes James Web Application Information Tecnology 302 Serrano Areant E-Commerce Sales Department

jawab 𝐶 𝑃𝑅𝑂𝐺𝑅𝐴𝑀𝑀𝐸𝑅 ∪𝐽𝐴𝑉 𝐴 𝑃𝑅𝑂𝐺𝑅𝐴𝑀𝑀𝐸𝑅 Emp_id Last_Name First_Name Project Department 102 Venable Mark E-Commerce Sales Department 201 Cordani John Firewall Information Tecnology 202 Barnes James Web Application 302 Serrano Areant

INTERSECTION (IRISAN) Diketahui dua buah relasi r(R) dan s(S), dinotasikan dengan 𝑟∩𝑠, adalah himpunan tupel yang ada dikedua relasi. Didefinisikan: 𝑟∩𝑠= 𝑡 𝑡∈𝑟∧𝑡∈𝑠

Contoh Diketahui dari tabel sebelumnya, carilah irisan dari relasi yang telah diketahui. Jawab: 𝐶 𝑃𝑅𝑂𝐺𝑅𝐴𝑀𝑀𝐸𝑅 ∩𝐽𝐴𝑉 𝐴 𝑃𝑅𝑂𝐺𝑅𝐴𝑀𝑀𝐸𝑅 Emp_id Last_Name First_Name Project Department 302 Serrano Areant E-Commerce Sales Department

DIFFERENCE (SELISIH) Diketahui dua buah relasi r(R) dan s(S), dinotasikan dengan 𝑟−𝑠, adalah himpunan tupel yang ada di r dan tidak ada di s. Didefinisikan: 𝑟−𝑠= 𝑡 𝑡∈𝑟∧𝑡∈𝑠

Contoh Carilah selisih relasi C_PROGRAMMER – JAVA_PROGRAMMER dan JAVA_PROGRAMMER - C_PROGRAMMER ! a). C_PROGRAMMER – JAVA_PROGRAMMER Emp_id Last_Name First_Name Project Department 102 Venable Mark E-Commerce Sales Department 201 Cordani John Firewall Information Tecnology b). JAVA_PROGRAMMER - C_PROGRAMMER Emp_id Last_Name First_Name Project Department 202 Barnes James Web Application Information Tecnology

PERKALIAN CARTESIUS Diketahui dua buah relasi tidak kosong r(R) dan s(S), dinotasikan dengan 𝑟⊗𝑠, adalah relasi yang tupelnya terbentuk dari perangkaian tupel relasi di r dan di s. Didefinisikan: 𝑟⊗𝑠= 𝑡 𝑡∈𝑟∧𝑡∈𝑠

Contoh Hasil relasi memperlihatkan: 5 atribut = 2(BUYER) + 3(PRODUCT) Diketahui relasi dibawah ini, carilah perkalian cartesius untuk kedua relasi! BUYER PRODUCT Id_Number Item 100 A 234 B 543 C Code Name Price A Bike 250 B Spikes 90 C Goggles 15 D Gloves 35 Hasil relasi memperlihatkan: 5 atribut = 2(BUYER) + 3(PRODUCT) 12 tupel = 3(BUYER) * 4(PRODUCT)

jawab Id_Number Item Code Name Price 100 A Bike 250 B Spikes 90 C Goggles 15 D Gloves 35 234 543

Operasi manipulasi dalam relasi Beberapa operasi umum yang banyak diterapkan terhadap relasi yang memungkinkan operasi-operasi saling bergantian adalah: Insert Update Delete

Insert Untuk menyisipkan tupel kedalam tabel. Format operasi INSERT adalah: 𝑰𝑵𝑺𝑬𝑹𝑻 𝑰𝑵𝑻𝑶 𝒏𝒂𝒎𝒂 𝒓𝒆𝒍𝒂𝒔𝒊 ( 𝑨 𝟏 = 𝑽 𝟏 , 𝑨 𝟐 = 𝑽 𝟐 , 𝑨 𝟑 = 𝑽 𝟑, … 𝑨 𝒏 = 𝑽 𝒏 ) Nilai v adalah kepunyaan domain atribut A. Operasi Insert bisa gagal karena: Nilai yang diberikan bukan kepunyaan domain dari kolom yang berhubunga dengannya. Tupel yang diisikan tidak memiliki jumlah entri yang sesuai Nilai key ada yang duplikasi Nilai yang dimasukkan ke dalam tabel merupakan nilai duplikasi Nama relasinya tidak ada dalam database.

delete Untuk menghapus tupel dari dalam tabel. Format delete: 𝑫𝑬𝑳𝑬𝑻𝑬 𝑭𝑹𝑶𝑴 𝒏𝒂𝒎𝒂_𝒓𝒆𝒍𝒂𝒔𝒊 𝑾𝑯𝑬𝑹𝑬 𝒌𝒐𝒏𝒅𝒊𝒔𝒊_𝒑𝒆𝒏𝒄𝒂𝒓𝒊𝒂𝒏 Operasi delete gagal jika: Tupel yang di indikasikan sudah tidak ada dalam relasi Tupel yang dihapus bersifat foreign key Relasinya tidak ada atau tupel tidak sesuia dengan skema

Update Untuk mengubah nilai dari suatu atribut. Format update: 𝑈𝑃𝐷𝐴𝑇𝐸 𝑛𝑎𝑚𝑎 𝑡𝑎𝑏𝑒𝑙 𝑆𝐸𝑇 𝑛𝑎𝑚𝑎 𝑘𝑜𝑙𝑜𝑚 =𝑛𝑖𝑙𝑎𝑖 𝑏𝑎𝑟𝑢 𝑊𝐻𝐸𝑅𝐸 𝑘𝑜𝑛𝑑𝑖𝑠𝑖 𝑝𝑒𝑛𝑐𝑎𝑟𝑖𝑎𝑛