02/12/2010 Konsep Model Relasional (1) • Model relasional menggambarkan database sebagai sekumpulan relasi-relasi • Domain=sekumpulan nilai atomic, dapat digunakan untuk menunjukkan tipe data MODEL DATA RELASIONAL DAN ALJABAR RELASIONAL (Pert. 10) – Contoh : • Domain Nama: sekumpulan karakter yang menggambarkan nama seseorang • Domain Umur_pegawai: nilai yang menyatakan umur pegawai perusahaan, nilainya diantara 15 dan 80 tahun Oleh : Umi Laili Yuhana, S.Kom, M.Sc. Sarwosri, S.Kom, M.T. Dr. Ir. Siti Rochimah • Relasi=tabel – Contoh: Relasi Pegawai BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 1 Konsep Model Relasional (2) Notasi untuk Model Relasional • R(A1,A2,...,An) Skema Relasi R dengan degree n • Skema Relasi= Relasi beserta atribut – Contoh: STUDENT(Name, SSN,...) – Contoh: Skema relasi Proyek didefinisikan sebagai Proyek(Nomer, Lokasi, Dep_nomor, Dep_nama) • t=<v1,v2,...,vn> Value (v) dalam tuple t pada relasi r(R). v1 adalah value(nilai) dari atribut ke-1 (A1) • Tuple=record • Atribut=field – Contoh: t=<‘Barbara’,’533-69-1238’> – Sama dengan t[Name, SSN]=<‘Barbara’, ’533-69-1238’> – Contoh: Nomer pada relasi Proyek • R.A notasi untuk Relasi.Atribut • Degree(arity)=jumlah atribut pada suatu relasi – Contoh: STUDENT.Name – Contoh: degree/arity dari relasi Proyek adalah 4 BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 3 DIAGRAM SKEMA : PEGAWAI PEGAWAI Inisial NmBelakang NoKTP Alamat Gaji JenisKelamin NoKTPKepala DNO DEPARTEMEN Dname Dnomor NOKTP_MGR TglMulai_MGR LOKASI_DEPARTEMEN Dnomor Dlokasi PROYEK Pnama Pnomor Plokasi 4 Relasi Pegawai SKEMA DATABASE RELASIONAL PERUSAHAAN NmDepan 2 JenisKel NoKTPKepala DNO John B Smith 123456789 731 Fondren, Houston, TX 30000 L 333445555 5 Franklin NmDepan Inisial T Wong NmBelakang 333445555 NoKTP 638 Voss, Houston, TX Alamat Gaji 40000 L 888665555 5 Alicia J Zelaya 999887777 3321 Castle, Spring, TX 25000 P 987654321 4 Jennifer S Wallace 987654321 291 Berry, Bellaire, TX 43000 P 888665555 4 Ramesh K Narayan 666884444 975 Fire Oak, Humble, TX 38000 L 333445555 5 Joyce A English 453453453 5631 Rice, Houston, TX 25000 P 333445555 5 Ahmad V Jabbar 987987987 980 Dallas, Houston, TX 25000 L 987654321 4 James E Borg 888665555 450 Stone, Houston, TX 55000 L null 1 Dnum BEKERJA_PADA NoKTP Pnomor LamaJam TANGGUNGAN NoKTP Nama_Tanggungan JenisKelamin TglLahir Hubungan BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 5 BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 6 1 02/12/2010 PROYEK DEPARTEMEN DAN LOKASI_DEPARTEMEN Departemen Dnama Dnomor NOKTP_MGR Plokasi Dnum ProductX 1 Bellaire 5 ProductY 2 Sugarland 5 01/01/1995 ProductZ 3 Houston 5 19/06/1981 Computerization 10 Stafford 4 Reorganization 20 Houston 1 Newbenefits 30 Stafford 4 5 333445555 22/05/1988 Administration 4 987654321 HeadQuarters 1 888665555 Lokasi_departemen Dnomor PROYEK TglMulai_MGR Research Dlokasi 1 Houston 4 Stafford 5 Bellaire 5 5 TANGGUNGAN Pnama NoKTP Pnomor Nama_Tanggungan JenisKelamin TglLahir Hubungan 333445555 Alice P 05/04/1986 Anak Perempuan 333445555 Theodore L 25/10/1983 Anak Laki-laki Sugarland 333445555 Joy P 03/05/1958 Pasangan Houston 987654321 Abner L 28/02/1942 Pasangan 123456789 Michael L 04/01/1988 Anak Laki-laki 123456789 Alice P 30/12/1988 Anak Perempuan 123456789 Elizabeth P 05/05/1967 Pasangan BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 7 BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 8 BEKERJA_PADA Bekerja_pada NoKTP Pnomor LamaJam 123456789 1 32.5 123456789 2 7.5 666884444 3 40.0 453453453 1 20.0 453453453 2 20.0 333445555 2 10.0 333445555 3 10.0 333445555 10 10.0 333445555 20 10.0 999887777 30 30.0 999887777 30 10.0 987987987 10 35.0 987987987 30 5.0 987654321 30 20.0 987654321 20 15.0 888665555 20 null ALJABAR RELASIONAL BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 9 Definisi Aljabar Relasional 10 Operasi dalam Aljabar Relasional • Sekumpulan operasi dasar untuk memanipulasi data pada model relasional dengan tujuan untuk mendapatkan informasi yang diinginkan • Hasil informasi tersebut didapat dari satu atau beberapa relasi yang saling berhubungan • Istilah Relasi, dalam bahasan ini dipergunakan untuk penamaan tabel beserta datanya baik yang murni maupun yang sudah dilakukan modifikasi dengan operasi-operasi aljabar relasional BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 11 • Secara umum dibagi menjadi 2: – Operasi yang dikembangkan secara khusus untuk database relasional. (SELECT, PROJECT dan JOIN) – Operasi himpunan (UNION, INTERSECTION, DIFFERENCE, dan CARTESIAN PRODUCT) BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 12 2 02/12/2010 Operasi Select () • Operasi Select () – gaji>30000 AND DNO=5(PEGAWAI) : untuk memilih sub himpunan pegawai yang memiliki gaji lebih dari 30000 yang bekerja di departemen 5. – Hasil operasi: Untuk memilih baris tertentu dari sebuah himpunan baris data (record) yang memenuhi kondisi dan membuang baris yang lain. Notasi: <kondisi pilihan>(<nama relasi>) Klausa <kondisi pilihan> bisa terbentuk dari beberapa kondisi yang terhubung dengan operator boolean (AND, OR dan NOT) – Misal: DNO=4(PEGAWAI) : untuk memilih sub himpunan pegawai yang bekerja pada departemen nomor 4. – Hasil operasi : • • NmDepan Inisial NmBelakang NoKTP Alamat Gaji NmDepan JenisKel NoKTPKepala DNO Alicia J Zelaya 999887777 3321 Castle, Spring, TX 25000 P 987654321 4 Jennifer S Wallace 987654321 291 Berry, Bellaire, TX 43000 P 888665555 4 Ahmad V Jabbar 987987987 980 Dallas, Houston, TX 25000 L 987654321 4 BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 JenisKel NoKTPKepala DNO Franklin T Wong 333445555 638 Voss, Houston, TX 40000 L 888665555 5 Ramesh K Narayan 666884444 975 Fire Oak, Humble, TX 38000 L 333445555 5 • • <daftar attribut>(<nama relasi>) • Jika <daftar attribut> tidak menyertakan primary key, maka dimungkinkan akan terjadi duplikasi. Duplikasi ini akan dihilangkan sehingga hanya sekali yang muncul. • Misal: Untuk memilih atribut JenisKel dan Gaji dari tabel Pegawai: – JenisKel, Gaji (Pegawai) JenisKel Gaji L 30000 L 40000 P 25000 P 43000 L 38000 P 25000 L 25000 L 55000 BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 John NoKTP Alamat Gaji JenisKel NoKTPKepala DNO B Smith 123456789 731 Fondren, Houston, TX 30000 L 333445555 5 T Wong 333445555 638 Voss, Houston, TX 40000 L 888665555 5 Ramesh K Narayan 666884444 975 Fire Oak, Humble, TX 38000 L 333445555 5 Joyce A English 453453453 5631 Rice, Houston, TX 25000 P 333445555 5 nmDepan, nmBelakang, gaji (PEG_DEP5) HASIL 14 Sebuah operasi bisa dituliskan dalam bentuk beberapa ekspresi aljabar relasional dengan mengelompokkan untuk tiap-tiap operasi dan memberi nama. Misal:Mengambil informasi nama depan, nama belakang dan gaji dari pegawai-pegawai yang bekerja di departemen nomor 5. – (tabel pegawai dipilah dulu hanya dengan mengambil yg memenuhi DNO=5 dan disimpan dalam relasi dengan nama PEG_DEP5) – (kemudian setelah itu, relasi PEG_DEP5 dipilah hanya diambil kolom-kolom nmDepan, nmBlk dan gaji) BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 16 Perubahan Nama Attribut Franklin HASIL Gaji HASIL nmDepan, nmBelakang, gaji (PEG_DEP5) 15 PEG_DEP5 DNO=5(PEGAWAI) NmBelakang Alamat nmDepan, nmBelakang, gaji (DNO=5(PEGAWAI)) bisa ditulis dalam bentuk: PEG_DEP5 DNO=5(PEGAWAI) nmDepan, nmBelakang, gaji (DNO=5(PEGAWAI)) Inisial NoKTP Urutan Operasi • Untuk memilih attribut (kolom) tertentu dari himpunan / sub himpunan dan membuang yang lain. • Notasi: NmDepan NmBelakang BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 13 Operasi Project PEG_DEP5 Inisial • Untuk mengubah nama attribut dari sebuah relasi yang merupakan hasil dari operasi aljabar relasional, ditulis nama atribut baru dalam huruf besar. Misal: TEMP DNO=5(PEGAWAI) RBARU (NAMADEPAN, NAMABELAKANG, GAJI) nmDepan, nmBelakang, Gaji (TEMP) NmDepan NmBelakang Gaji John Smith 30000 Franklin Wong 40000 John Smith 30000 Ramesh Narayan 38000 Franklin Wong 40000 Joyce English 25000 Ramesh Narayan 38000 Joyce English 25000 BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 RBARU 17 NAMADEPAN BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 NAMABELAKANG GAJI 18 3 02/12/2010 Operasi Himpunan Operasi Himpunan • UNION: notasi R S Relasi yang menggabungkan semua baris di R atau S dengan meniadakan duplikasi. • INTERSECTION: notasi R S Relasi yang terdiri dari baris yang ada di R dan juga ada di S. • DIFFERENCE: notasi R – S Relasi yang terdiri dari semua baris di R, tetapi tidak ada di S. Relasi yang dioperasikan dengan operasi-operasi di atas harus memiliki jumlah attribut dan jenis yang sama (union compatible). BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 Contoh Operasi Himpunan NmDepan Inisial NmBelakang Mengambil nama-nama pegawai wanita beserta nama-nama tanggungan masingmasing NoKTP Alamat – Relasi yang terdiri dari kombinasi baris yang terdapat di R dan S. Yang mana setiap baris di R digabungkan dengan setiap baris di S. • Misal: Mengambil nama-nama pegawai wanita beserta nama-nama tanggungan masing-masing: 1. PEG_WAN JenisKel=’P’ (PEGAWAI) 2. NAM_PEG_WAN (NMDEPAN, NMBELAKANG, KTP) nmDepan, nmBelakang, NoKTP (PEG_WAN) 3. TG_PEG NAM_PEG_WAN X TANGGUNGAN 4. AKTUAL_TG KTP=NoKTP (TG_PEG) 5. HASIL nmDepan, nmBelakang, Nama_Tanggungan (AKTUAL_TG) BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 19 1. PEG_WAN JenisKel=’P’ (PEGAWAI) PEG_WAN • CARTESIAN PRODUCT R X S Gaji 3. TG_PEG NAM_PEG_WAN X TANGGUNGAN TG_PEG 20 Mengambil nama-nama pegawai wanita beserta nama-nama tanggungan masingmasing Jenis Kela min TglLahir Alicia Zelaya 999887777 333445555 Alice P 05/04/1986 Anak Perempuan Alicia Zelaya 999887777 333445555 Theodore L 25/10/1983 Anak Laki-laki Alicia Zelaya 999887777 333445555 Joy P 03/05/1958 Pasangan Alicia Zelaya 999887777 987654321 Abner L 28/02/1942 Pasangan Alicia Zelaya 999887777 123456789 Michael L 04/01/1988 Anak Laki-laki NmDepan NmBelakang KTP NoKTP Nama_Tang gungan Hubungan JenisKel NoKTPKepala DNO Alicia Zelaya 999887777 123456789 Alice P 30/12/1988 Anak Perempuan Alicia J Zelaya 999887777 3321 Castle, Spring, TX 25000 P 987654321 4 Alicia Zelaya 999887777 123456789 Elizabeth P 05/05/1967 Pasangan Jennifer S Wallace 987654321 291 Berry, Bellaire, TX 43000 P 888665555 4 Jennifer Wallace 987654321 333445555 Alice P 05/04/1986 Anak Perempuan Joyce A English 453453453 5631 Rice, Houston, TX 25000 P 333445555 5 Jennifer Wallace 987654321 333445555 Theodore L 25/10/1983 Anak Laki-laki Jennifer Wallace 987654321 333445555 Joy P 03/05/1958 Pasangan Jennifer Wallace 987654321 987654321 Abner L 28/02/1942 Pasangan Jennifer Wallace 987654321 123456789 Michael L 04/01/1988 Anak Laki-laki Jennifer Wallace 987654321 123456789 Alice P 30/12/1988 Anak Perempuan Jennifer Wallace 987654321 123456789 Elizabeth P 05/05/1967 Pasangan KTP Joyce English 453453453 333445555 Alice P 05/04/1986 Anak Perempuan 2. NAM_PEG_WAN (NMDEPAN, NMBELAKANG, KTP) nmDepan, nmBelakang, NoKTP (PEG_WAN) NAM_PEG_WAN NmDepan NmBelakang Alicia Zelaya 999887777 Joyce English 453453453 333445555 Theodore L 25/10/1983 Anak Laki-laki Jennifer Wallace 987654321 Joyce English 453453453 333445555 Joy P 03/05/1958 Pasangan Joyce English 453453453 Joyce English 453453453 987654321 Abner L 28/02/1942 Pasangan Joyce English 453453453 123456789 Michael L 04/01/1988 Anak Laki-laki Joyce English 453453453 123456789 Alice P 30/12/1988 Anak Perempuan Joyce English 453453453 123456789 Elizabeth P 05/05/1967 Pasangan BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 21 Mengambil nama-nama pegawai wanita beserta nama-nama tanggungan masingmasing BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 22 LATIHAN Tuliskan aljabar relasional beserta hasil-hasil dari soal berikut 4. AKTUAL_TG ACTUAL_TG NmDepan Jennifer KTP=NoKTP (TG_PEG) NmBelakang KTP Wallace 987654321 NoKTP 987654321 Nama_Tanggungan Abner JenisKelamin TglLahir L 28/02/1942 Hubungan Pasangan 5. HASIL nmDepan, nmBelakang, Nama_Tanggungan (AKTUAL_TG) ACTUAL_TG NmDepan Jennifer NmBelakang Wallace Nama_Tanggungan Abner BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 23 1. Dapatkan nama, alamat dan gaji pegawai yang berada pada departemen research 2. Dapatkan nama, alamat dan no KTP pegawai yang menjadi menjadi supervisor dari pegawai lain 3. Dapatkan nama dan noKTP pegawai beserta nama dan noKTP supervisornya 4. dapatkan nama, alamat dan NoKTP dari pegawai yang menjadi manajer departemen 4 BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 24 4 02/12/2010 LATIHAN LATIHAN Tuliskan aljabar relasional beserta hasil-hasil dari soal berikut Tuliskan aljabar relasional beserta hasil-hasil dari soal berikut 5. Dapatkan nama, alamat beserta nama proyek dari pegawai yang terlibat di proyek ProductZ 6. Dapatkan nama proyek yang dikedalikan oleh departemen research 7. Dapatkan nama proyek yang berlokasi di houston atau di stafford 8. Dapatkan nama dan lokasi proyek tempat john bekerja BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 25 9. Dapatkan nama dan alamat pegawai laki-laki yang memiliki gaji kurang dari 40000 10. Dapatkan nama dan gaji dari manajer departemen Administration BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 26 Pustaka • Ramakrishnan, Raghu, Gehrke, Johannes. 2003. Database Management Systems, Third Edition. New York: The McGraw-Hill Companies, Inc. “Chapter 4 Relational Algebra and Calculus” BASIS DATA JURUSAN TEKNIK INFORMATIKA - ITS GASAL 2010/2011 27 5