PENGENALAN BASIS DATA

advertisement
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
Download