laporan praktikum basis data
TRANSCRIPT
![Page 1: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/1.jpg)
LAPORAN PRAKTIKUM BASIS DATA
INTRODUCTION
DISUSUN OLEH:
FEMBI REKRISNA GRANDEA PUTRA
M0513019
ASISTEN DOSEN:
1. ALFI MUHAMMAD ANWAR (M0512003)2. AMELIA RAHMAN (M0512004)3. RIO PAHLEVY RIDLO YUDHA BHAKTI (M0512048)4. YANIAR RAHMAH (M0512059)
JURUSAN INFORMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SEBELAS MARET
SURAKARTA
SELASA, 7 OKTOBER 2014
![Page 2: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/2.jpg)
1. Prosesa. Instalasi
i. Untuk mengunduh perangkat lunak dari Oracle, kita membutuhkanakun dan harus menyetujui perjanjian lisensi.
ii. Setelah menyetujui perjanjian lisensi, kita dapat mengunduhperangkat lunak.
iii. Berkas yang terunduh berupa berkas terkompresi, berkas .zip tersebutdapat kita ekstrak ke suatu direktori. Setelah diekstrak, buka berkassetup.exe.
Direkomendasikan untuk mengklik kanan pada berkas setup.exe danmenjalankannya sebagai administrator.
![Page 3: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/3.jpg)
iv. Setelah membuka berkas setup.exe, kita dapat melihat jendelaInstallShield Wizard memuat berkas.
Setelah itu, muncul kotak dialog instalasi pertama. Klik tombol Nextuntuk memulai instalasi.
v. Kotak dialog kedua adalah informasi lisensi instalasi. Pilih I acceptthe terms in the license agreement dan klik tombol Next.
![Page 4: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/4.jpg)
vi. Kotak dialog ketiga menampilkan lokasi penyimpanan, kita dapatmenggantinya atau membiarkannya terinstal pada lokasi default,setelah itu klik tombol Next.
vii. Kotak dialog keempat meminta kita untuk menentukan Ports TNS,MTS, dan HTTP. Kita dapat mengisinya dengan nilai default seperti
![Page 5: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/5.jpg)
gambar di bawah atau menggantinya, kemudian klik tombol Nextuntuk melanjutkan.
viii. Kotak dialog kelima meminta kita memasukkan kata kunci untukpengguna SYS dan SYSTEM. Kita harus memasukkannya dua kalidan keduanya harus sama. Klik tombol Next untuk melanjutkan.
![Page 6: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/6.jpg)
ix. Kotak dialog keenam memperlihatkan informasi pengaturan instalasiyang telah kita pilih. Klik tombol Install untuk memulainya.
x. Kotak dialog ketujuh menampilkan bilah proses yang akanberlangsung selama beberapa menit. Tunggu beberapa saat.
![Page 7: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/7.jpg)
xi. Kotak dialog terakhir menampilkan status instalasi perangkat lunak.Setelah proses selesai, klik tombol Finish untuk mengakhiri prosesinstalasi.
b. Penggunaani. Buka pintasan Get Started di map Oracle Database 11g Express
Edition di menu Mulai.
ii. Klik Application Express.
![Page 8: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/8.jpg)
iii. Masuk ke akun yang digunakan dengan memasukkan username danpassword.
iv. Klik Already have an account? Login Here.
v. Masukkan workspace, username, dan password, kemudian klikLogin.
vi. Klik dropdown SQL Workshop, pilih Object Browser.
![Page 9: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/9.jpg)
vii. Klik dropdown Create, pilih Table.
viii. Ketikkan table name (MAHASISWA), column name (NAMA danNIM), masing-masing bertipe VARCHAR2, berskala 30 dan 8karakter, dan tidak bernilai null.
![Page 10: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/10.jpg)
ix. Pilih Populated from a new sequence. Pilih NIM(VARCHAR2)sebagai Primary Key. Klik Next >.
x. Klik Next >.
xi. Klik Next >.
![Page 11: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/11.jpg)
xii. Klik Create.
xiii. Program menampilkan isi tabel yang telah dibuat berupa kolom danketerangannya.
![Page 12: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/12.jpg)
xiv. Memasukkan NAMA dan NIM dari MAHASISWA untuk membuatbaris.
xv. Program menampilkan isi baris dari kolom NAMA dan NIM daritabel MAHASISWA.
xvi. Menambahkan kolom ALAMAT bertipe VARCHAR2 dengankarakter maksimal sebanyak 100 dan boleh bernilai null.
xvii. Klik Finish.
![Page 13: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/13.jpg)
LAPORAN PRAKTIKUM BASIS DATA
ENTITY RELATIONSHIP
DISUSUN OLEH:
FEMBI REKRISNA GRANDEA PUTRA
M0513019
ASISTEN DOSEN:
1. ALFI MUHAMMAD ANWAR (M0512003)
2. AMELIA RAHMAN (M0512004)
3. RIO PAHLEVY RIDLO YUDHA BHAKTI (M0512048)
4. YANIAR RAHMAH (M0512059)
JURUSAN INFORMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SEBELAS MARET
SURAKARTA
SELASA, 14 OKTOBER 2014
![Page 14: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/14.jpg)
1. Perpustakaan
a. Entitas dan Atribut
i. MAHASISWA dengan atribut Nim, Nama, Alamat, dan Nomor_hp.
ii. KARYAWAN dengan atribut Nama, Nik, dan Alamat.
iii. BUKU dengan atribut Isbn, Judul, Penulis, dan Penerbit.
iv. TRANSAKSI dengan atribut Tanggal_pinjam dan Tanggal_kembali.
b. Relasi dan Kardinalitas
i. MENGELOLA KARYAWAN MENGELOLA BUKU dengan
kardinalitas 1:n, artinya 1 karyawan dapat mengelola banyak buku
dan banyak buku hanya dapat dikelola oleh 1 karyawan.
ii. MENGELOLA KARYAWAN MENGELOLA MAHASISWA
dengan kardinalitas 1:n, artinya 1 karyawan dapat mengelola banyak
mahasiswa dan banyak mahasiswa hanya dapat dikelola oleh 1
karyawan.
iii. MELAYANI KARYAWAN MELAYANI TRANSAKSI dengan
kardinalitas 1:n, artinya 1 karyawan dapat melayani banyak transaksi
dan banyak transaksi hanya dapat dilayani oleh 1 karyawan.
iv. MELAKUKAN MAHASISWA MELAKUKAN TRANSAKSI
dengan kardinalitas 1:n, artinya 1 mahasiswa dapat melakukan
banyak transaksi dan banyak transaksi hanya dapat dilakukan oleh 1
mahasiswa.
![Page 15: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/15.jpg)
v. DILAKUKAN BUKU DILAKUKAN TRANSAKSI dengan
kardinalitas n:n, artinya banyak buku dapat dilakukan oleh banyak
transaksi dan banyak transaksi dapat melakukan banyak buku.
c. Partisipasi
i. KARYAWAN MENGELOLA BUKU merupakan partisipasi parsial
karena tidak semua karyawan harus mengelola buku, ada karyawan
yang melakukan pekerjaan lain. BUKU DIKELOLA KARYAWAN
merupakan partisipasi total karena semua buku harus dikelola oleh
karyawan.
ii. KARYAWAN MENGELOLA MAHASISWA merupakan
partisipasi parsial karena tidak semua karyawan harus mengelola
mahasiswa, ada karyawan yang melakukan pekerjaan lain.
MAHASISWA DIKELOLA KARYAWAN merupakan partisipasi
total karena semua mahasiswa harus dikelola oleh karyawan.
iii. KARYAWAN MELAYANI TRANSAKSI merupakan partisipasi
parsial karena tidak semua karyawan harus melayani transaksi, ada
karyawan yang melakukan pekerjaan lain. TRANSAKSI
DILAYANI KARYAWAN merupakan partisipasi total karena
semua transaksi harus dilayani oleh karyawan.
iv. MAHASISWA MELAKUKAN TRANSAKSI merupakan
partisipasi parsial karena tidak semua mahasiswa harus melakukan
transaksi, ada mahasiswa yang melakukan pekerjaan lain.
TRANSAKSI DILAKUKAN MAHASISWA merupakan partisipasi
total karena semua transaksi harus dilakukan oleh mahasiswa.
v. BUKU DILAKUKAN TRANSAKSI merupakan partisipasi parsial
karena tidak semua buku harus dilakukan transaksi (dipinjam), ada
buku yang tidak dipinjam. TRANSAKSI MELAKUKAN BUKU
merupakan partisipasi total karena semua transaksi harus melakukan
buku (meminjam).
![Page 16: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/16.jpg)
2. Apotek
a. Entitas dan Atribut
i. OBAT dengan atribut No_bpom, Nama, dan Jenis.
ii. MENJUAL dengan atribut Hasil dan Tanggal.
iii. KARYAWAN dengan atribut Id_karyawan, Nama, Alamat, dan
No_telepon.
iv. PENYUPLAI dengan atribut Id_penyuplai, Nama, Alamat, dan
No_telepon.
v. PERUSAHAAN dengan atribut Id_perusahaan, Nama, Alamat, dan
No_telepon.
b. Relasi dan Kardinalitas
i. KARYAWAN MENJUAL OBAT dengan kardinalitas 1:n, artinya 1
karyawan dapat menjual banyak obat dan banyak obat hanya dapat
dijual oleh 1 karyawan. Hasil penjualan direkapitulasi oleh
karyawan.
ii. KARYAWAN MEMANTAU PERSEDIAAN dengan kardinalitas
1:n, artinya 1 karyawan dapat memantau banyak persediaan dan
banyak persediaan hanya dapat dipantau oleh 1 karyawan.
iii. OBAT MEMILIKI PERSEDIAAN dengan kardinalitas 1:n, artinya
1 obat dapat memiliki banyak persediaan.
iv. PERUSAHAAN MENGIRIMKAN PENYUPLAI dengan
kardinalitas n:1 karena penyuplai dapat dikirimkan obat oleh banyak
perusahaan.
v. PENYUPLAI MENYUPLAI OBAT dengan kardinalitas n:1 karena
obat dapat disuplai oleh banyak penyuplai.
c. Partisipasi
i. KARYAWAN MENJUAL OBAT dengan partisipasi parsial karena
tidak semua karyawan menjual obat. OBAT DIJUAL KARYAWAN
dengan partisipasi parsial karena tidak semua obat dijual oleh
karyawan.
![Page 17: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/17.jpg)
ii. KARYAWAN MEMANTAU PERSEDIAAN dengan partisipasi
parsial karena tidak semua karyawan memantau persediaan.
PERSEDIAAN DIPANTAU KARYAWAN dengan partisipasi total
karena semua persediaan dipantau karyawan.
iii. OBAT MEMILIKI PERSEDIAAN dengan partisipasi total karena
semua obat memiliki persediaan. PERSEDIAAN DIMILIKI OBAT
dengan partisipasi total karena semua persediaan dimiliki obat.
iv. PERUSAHAAN MENGIRIMKAN PENYUPLAI dengan partisipasi
total karena semua perusahaan mengirimkan obat kepada penyuplai
dan sebaliknya.
v. PENYUPLAI MENYUPLAI OBAT dengan partisipasi total karena
semua penyuplai menyuplai obat dan sebaliknya.
![Page 18: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/18.jpg)
LAPORAN PRAKTIKUM BASIS DATA
ENHANCED ENTITY RELATIONSHIP
DISUSUN OLEH:
FEMBI REKRISNA GRANDEA PUTRA
M0513019
ASISTEN DOSEN:
1. ALFI MUHAMMAD ANWAR (M0512003)
2. AMELIA RAHMAN (M0512004)
3. RIO PAHLEVY RIDLO YUDHA BHAKTI (M0512048)
4. YANIAR RAHMAH (M0512059)
JURUSAN INFORMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SEBELAS MARET
SURAKARTA
RABU, 29 OKTOBER 2014
![Page 19: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/19.jpg)
1. Dasar Teori
a. Entitas dan Atribut
Entitas (diketik dengan huruf besar) adalah sesuatu yang dapat dibedakan
antara satu dengan yang lainnya dan bersifat independen, dapat berupa objek
secara fisik (rumah, mobil, peralatan, dsb.) atau objek secara konsep
(pekerjaan, perusahaan, rencana, dsb.). Atribut adalah sesuatu yang melekat
atau dimiliki oleh entitas atau relationship, yang menyediakan penjelasan
detail tentang entitas atau relationship tersebut. Atribut key (diketik dengan
garis bawah) adalah atribut yang dapat digunakan untuk membedakan objek
satu dengan yang lainnya dan memiliki sifat unik.
b. Relasi dan Kardinalitas
Relasi adalah hubungan secara logis yang terjadi antara entitas yang satu
dengan lainnya, dan bersifat dependen, minimal memiliki atribut-atribut
kunci yang berasal dari entitas-entitas yang direlasikan. Kardinalitas adalah
derajat maksimum satu entitas dapat berelasi dengan entitas yang lain. Jenis:
one-to-one,
one-to-many atau many-to-one,
many-to-many.
c. Partisipasi
Partisipasi adalah jumlah minimum suatu data induk memiliki anak.
d. Model Enhanced Entity Relationship (EER)
Model EER merupakan model ER yang ditambah kemampuan semantiknya
dengan beberapa konsep yang lebih kompleks.
Konsep-konsepnya yaitu:
i. Subclass
Subset dari suatu entitas yang dikelompokkan dalam pengertian
tertentu yang perlu sajikan secara eksplisit.
ii. Superclass
Entitas yang merupakan induk dari subclass-subclass-nya.
iii. Generalization
Proses penggabungan subclass-subclass menjadi suatu entitas yang
lebih umum.
iv. Spesialization
![Page 20: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/20.jpg)
Proses pemecahan entitas menjadi subclass-subclass beserta atribut-
atributnya.
v. Subclass/Superclass Relationship
1. Relationship yang menghubungkan subclass dan superclass-
nya.
2. Bila suatu entity merupakan anggota dari suatu subclass,
maka ia juga merupakan anggota dari superclass.
3. Bila suatu entity merupakan anggota dari suatu superclass,
maka ia belum tentu merupakan anggota dari subclass.
vi. Disjoint Constraint
1. Constraint yang menerangkan bahwa subclass-subclass dari
spesialisasi saling disjoint, artinya entity merupakan anggota
dari salah satu subclass.
2. Disjoint constraint direpresentasikan dengan lambang “d”
yang berarti disjoint.
2. Pembahasan
a. Entitas dan Atribut
i. OBAT dengan atribut No_bpom, Nama, dan Harga.
ii. MENJUAL dengan atribut Hasil dan Tanggal.
iii. KARYAWAN dengan atribut Id_karyawan, Nama, Alamat, dan
No_telepon.
iv. PENYUPLAI dengan atribut Id_penyuplai, Nama, Alamat, dan
No_telepon.
v. PERUSAHAAN dengan atribut Id_perusahaan, Nama, Alamat, dan
No_telepon.
b. Relasi dan Kardinalitas
i. KARYAWAN MENJUAL OBAT dengan kardinalitas 1:n, artinya 1
karyawan dapat menjual banyak obat dan banyak obat hanya dapat
dijual oleh 1 karyawan. Hasil penjualan direkapitulasi oleh
karyawan.
![Page 21: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/21.jpg)
ii. KARYAWAN MEMANTAU PERSEDIAAN dengan kardinalitas
1:n, artinya 1 karyawan dapat memantau banyak persediaan dan
banyak persediaan hanya dapat dipantau oleh 1 karyawan.
iii. OBAT MEMILIKI PERSEDIAAN dengan kardinalitas 1:n, artinya
1 obat dapat memiliki banyak persediaan.
iv. PERUSAHAAN MENGIRIMKAN PENYUPLAI dengan
kardinalitas n:1 karena penyuplai dapat dikirimkan obat oleh banyak
perusahaan.
v. PENYUPLAI MENYUPLAI OBAT dengan kardinalitas n:1 karena
obat dapat disuplai oleh banyak penyuplai.
c. Partisipasi
i. KARYAWAN MENJUAL OBAT dengan partisipasi parsial karena
tidak semua karyawan menjual obat. OBAT DIJUAL KARYAWAN
dengan partisipasi parsial karena tidak semua obat dijual oleh
karyawan.
ii. KARYAWAN MEMANTAU PERSEDIAAN dengan partisipasi
parsial karena tidak semua karyawan memantau persediaan.
PERSEDIAAN DIPANTAU KARYAWAN dengan partisipasi total
karena semua persediaan dipantau karyawan.
iii. OBAT MEMILIKI PERSEDIAAN dengan partisipasi total karena
semua obat memiliki persediaan. PERSEDIAAN DIMILIKI OBAT
dengan partisipasi total karena semua persediaan dimiliki obat.
iv. PERUSAHAAN MENGIRIMKAN PENYUPLAI dengan partisipasi
total karena semua perusahaan mengirimkan obat kepada penyuplai
dan sebaliknya.
v. PENYUPLAI MENYUPLAI OBAT dengan partisipasi total karena
semua penyuplai menyuplai obat dan sebaliknya.
d. Model EER
Entitas OBAT akan menjadi superclass, berarti bahwa entitas OBAT akan
menjadi induk dari masing-masing subclass. Sehingga informasi mengenai
masing-masing subclass yang sama akan diletakkan pada superclass-nya.
Informasi yang spesifik diletakkan di subclass yang berkaitan.
1. PIL dengan atribut Dosis, No_bpom, Nama, dan Harga.
2. KAPSUL dengan atribut Kegunaan, No_bpom, Nama, dan Harga.
![Page 22: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/22.jpg)
3. BUBUK dengan atribut Resep, No_bpom, Nama, dan Harga.
4. CAIR dengan atribut Takaran, No_bpom, Nama, dan Harga.
Atribut umum memiliki kesamaan pada masing- masing entitas, maka
diletakkan di superclass, yaitu entitas OBAT. Untuk atribut yang bersifat
khusus (yang hanya dimiliki subclass tertentu), maka diletakkan di subclass
yang berkaitan.
![Page 23: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/23.jpg)
LAPORAN PRAKTIKUM BASIS DATA
MAPPING
DISUSUN OLEH:
FEMBI REKRISNA GRANDEA PUTRA
M0513019
ASISTEN DOSEN:
1. ALFI MUHAMMAD ANWAR (M0512003)
2. AMELIA RAHMAN (M0512004)
3. RIO PAHLEVY RIDLO YUDHA BHAKTI (M0512048)
4. YANIAR RAHMAH (M0512059)
JURUSAN INFORMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SEBELAS MARET
SURAKARTA
RABU, 18 NOVEMBER 2014
![Page 24: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/24.jpg)
Langkah-langkah Mapping
1. Untuk setiap entitas skema relasi R yang menyertakan seluruh Simple Atribute dan
Simple Attribute dari Composite Attribute yang ada, pilih salah satu atribut kunci
sebagai Primary Key.
2. Untuk setiap Entitas Lemah, buatlah skema relasi R dengan mengikutsertakan
seluruh Simple Attribute. Tambahkan Primary Key dari entitas kuatnya (Owner
Entity type) yang akan digunakan sebagai Primary Key bersama-sama Partial Key
dari Entitas Lemah.
3. Untuk setiap relasi binary 1:1, tambahkan Primary Key dari sisi yang lebih “ringan”
ke sisi (entitas) yang lebih “berat”. Suatu sisi dianggap lebih “berat” timbangannya
apabila mempunyai partisipasi total. Tambahkan juga Simple Attribute yang
terdapat pada relasi tersebut ke sisi yang lebih “berat”. Apabila kedua partisipasi
adalah sama total atau sama-sama partial, maka kedua entitas tersebut boleh
digabung menjadi satu skema relasi.
4. Untuk setiap relasi binary 1:N yang tidak melibatkan entitas lemah, tentukan mana
sisi yang lebih “berat”. Sisi dianggap lebih “berat” timbangannya adalah sisi-N.
Tambahkan Primary Key dari sisi yang “ringan” ke skema relasi sisi yang lebih
“berat”. Tambahkan juga seluruh simple attribute yang terdapat pada relasi biner
tersebut.
5. Untuk setiap relasi binary M:N, buatlah skema relasi baru R dengan atribut seluruh
simple attribute yang terdapat pada relasi biner tersebut. Tambahkan primary key
yang terdapat pada kedua sisi ke skema relasi R. Kedua Foreign Key yang didapat
dari kedua sisi tersebut digabung menjadi satu membentuk Primary Key dari skema
relasi R.
6. Untuk setiap Multivalued Attribute, buatlah skema relasi R yang menyertakan
atribut dari multivalue tersebut. Tambahkan Primary Key dari relasi yang memiliki
multivalued tersebut. Kedua atribut tersebut membentuk Primary Key dari skema
relasi R.
7. Untuk setiap relasi n-ary dengan n>2, buatlah skema relasi R yang menyertakan
seluruh Primary Key dari entitas yang ikut serta. Sejumlah n Foreign Key tersebut
akan membentuk Primary Key untuk skema relasi R. Tambahkan seluruh Simple
Attribute yang terdapat pada relasi n -ary tersebut.
![Page 25: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/25.jpg)
ER Diagram Database Perpustakaan
Entitas beserta Atribut
1. ANGGOTA: Id_user, Id_person, Name, Place_of_birth,Bdate,Email,Sex, Address,
Mail_Address, Occupation,Mobilephone,Jurusan,Homephone
2. LIBRARIAN: Id_librarian, Id_person, Name,Place_of_birth, Bdate,Email, Sex,
Address, Mail_address, Homephone, Mobilephone
3. TRANSAKSI: Id_transaction, Back_date, Fine
4. KOLEKSI: Code_coll, Type_coll, Isbn/Issn, Author, Publisher, Year_of_publisher,
Category
![Page 26: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/26.jpg)
Untuk membuat mapping dari database perpustakaan, langkah pertama adalah
melakukan mapping strong entity.
Langkah kedua, yaitu mapping weak entity. Jika TRANSAKSI adalah weak entity,
PK-nya adalah gabungan semua FK dan Partial Key.
Langkah ketiga, yaitu Mapping 1:1 Relationship (tidak ditemukan).
![Page 27: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/27.jpg)
Langkah keempat, yaitu Mapping 1:N Relationship.
LIBRARIAN juga dapat meminta TRANSAKSI - KOLEKSI ditunjukkan dengan
relationship ASK, sama dengan ASK - ANGGOTA ke TRANSAKSI, sehingga
ditempatkan di atribut yang sama.
Langkah kelima, yaitu Mapping N:M Relationship (tidak ditemukan).
Langkah keenam, yaitu Multivalued attribute (tidak ditemukan).
Langkah ketujuh, yaitu N-ary Relationship (tidak ditemukan).
Gambar Mapping Database Perpustakaan
![Page 28: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/28.jpg)
LAPORAN PRAKTIKUM BASIS DATA
SQL COMMAND
DISUSUN OLEH:
FEMBI REKRISNA GRANDEA PUTRA
M0513019
ASISTEN DOSEN:
1. ALFI MUHAMMAD ANWAR (M0512003)
2. AMELIA RAHMAN (M0512004)
3. RIO PAHLEVY RIDLO YUDHA BHAKTI (M0512048)
4. YANIAR RAHMAH (M0512059)
JURUSAN INFORMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SEBELAS MARET
SURAKARTA
RABU, 25 NOVEMBER 2014
![Page 29: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/29.jpg)
Mapping Database Perpustakaan
Mapping Database Perpustakaan dalam Program Dia
Pembuatan tabel.
![Page 30: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/30.jpg)
Pembuatan tabel bernama ANGGOTA.
Pembuatan tabel bernama KOLEKSI.
Pembuatan tabel bernama LIBRARIAN.
Pembuatan tabel bernama TRANSAKSI.
Proses selanjutnya menggunakan SQL Command Line. Untuk menghubungkan database
yang telah dibuat tadi, ketikkan kata “connect” di SQL Command dan masukkan nama
database dan password-nya.
![Page 31: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/31.jpg)
Ketikkan “desc ANGGOTA”, maka akan ditampilkan struktur tabel dari entitas
ANGGOTA.
Ketikkan “desc LIBRARIAN”, maka akan ditampilkan struktur tabel dari entitas
LIBRARIAN.
Ketikkan “desc TRANSAKSI”, maka akan ditampilkan struktur tabel dari entitas
TRANSAKSI.
Ketikkan “desc KOLEKSI”, maka akan ditampilkan struktur tabel dari entitas KOLEKSI.
![Page 32: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/32.jpg)
Untuk menampilkan semua isi tabel, dapat dilakukan dengan perintah “SELECT*FROM
NAMA_ENTITAS;”.
Tampilan perintah untuk menambahkan data atau baris.
Tampilan hasil penambahan data atau baris.
![Page 33: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/33.jpg)
Tampilan isi tabel KOLEKSI.
Tampilan proses penyisipan data/baris pada tabel KOLEKSI.
Tampilan proses penghapusan data/baris pada tabel KOLEKSI.
![Page 34: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/34.jpg)
Tampilan perintah pemutakhiran data atau baris pada tabel LIBRARIAN.
Tampilan data awal pada tabel LIBRARIAN.
Saat dilakukan pemutakhiran data pada ID_PERSON = 122122, maka data yang diperbarui
di bagian NAME menjadi Agus Saputra. Agar data pada bagian NAME berurutan secara
ascending, dapat ditambahkan perintah bernama ORDER BY. Untuk menampilkan data
pada NAME secara berurutan ascending, maka pada bagian order by kita pilih ORDER BY
NAME ASC; sehingga secara otomatis akan berurutan secara ascending.
![Page 35: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/35.jpg)
Tampilan untuk menampilkan data hanya pada bagian NAME dari tabel LIBRARIAN.
Untuk menambahkan syarat penampilan suatu data tertentu, dapat menggunakan perintah
WHERE. Dengan syarat berupa pustakawan yang memiliki nomor identitas 122122 pada
tabel LIBRARIAN, maka akan ditampilkan pustakawan bernama Agus Saputra.
![Page 36: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/36.jpg)
LAPORAN PRAKTIKUM BASIS DATA
SQL COMMAND
DISUSUN OLEH:
FEMBI REKRISNA GRANDEA PUTRA
M0513019
ASISTEN DOSEN:
1. ALFI MUHAMMAD ANWAR (M0512003)
2. AMELIA RAHMAN (M0512004)
3. RIO PAHLEVY RIDLO YUDHA BHAKTI (M0512048)
4. YANIAR RAHMAH (M0512059)
JURUSAN INFORMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SEBELAS MARET
SURAKARTA
RABU, 2 DESEMBER 2014
![Page 37: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/37.jpg)
Membuat tabel basis data dari mapping di bawah ini menggunakan aplikasi Oracle.
Untuk membuat tabel ANGGOTA, menggunakan perintah:
Untuk membuat tabel KOLEKSI, menggunakan perintah:
Untuk membuat tabel LIBRARIAN, menggunakan perintah:
![Page 38: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/38.jpg)
Untuk membuat tabel TRANSAKSI, menggunakan perintah:
Selanjutnya melakukan pembaruan tambahan kepada beberapa atribut setiap entitas.
Tabel ANGGOTA
Tabel KOLEKSI
![Page 39: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/39.jpg)
Tabel LIBRARIAN
Tabel TRANSAKSI
Selanjutnya menjalankan beberapa perintah query pada tabel yang telah dibut. Setelah tabel
dibuat, buka menu SQL Command.
Perintah-perintah yang dijalankan di SQL Command Oracle Application Express:
![Page 40: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/40.jpg)
1. Menampilkan id_user dan nama dari tabel anggota yang berjenis kelamin perempuan
(P) dan berjenis pekerjaan mahasiswa.
2. Menampilkan jumlah rata-rata koleksi buku yang dimiliki perpustakaan.
Perintah AVG berguna untuk menampilkan rata-rata dari number_of_coll dari tabel
KOLEKSI dengan type_coll yang bernilai ‘Buku’. Sehingga diperoleh nilai 1 + 3 =
2.
3. Menampilkan id_user dan nama dari anggota yang masih melakukan peminjaman,
tapi pernah terlambat mengembalikan koleksi dan diberi denda.
![Page 41: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/41.jpg)
Menampilkan id_user dan nama dari tabel anggota dan transaksi dengan
menggunakan alias a untuk anggota dan t untuk transaksi di mana id_user dari tabel
anggota = id_user dari tabel transaksi dengan syarat back_date di tabel transaksi
bernilai null dan fine di tabel transaksi bernilai tidak null.
4. Menampikan nama pegawai yang mungkin merupakan anggota perpustakaan.
Menampilkan nama, tempat lahir, tanggal lahir, dan jenis kelamin dari tabel
LIBRARIAN yang memiliki data yang sama dengan tabel ANGGOTA. Perintah
UPPER digunakan untuk mengubah semua huruf ke huruf kapital. Perintah intersect
digunakan untuk memperoleh data yang terdapat pada tabel ANGGOTA dan
LIBRARIAN.
5. Menampilkan urutan kode koleksi yang paling banyak dipinjam dari setiap koleksi.
Menampilkan kode koleksi yang paling banyak (MAX) dan paling sedikit (MIN)
dipinjam dari setiap koleksi.
Buku: MAX = 2 dan MIN = 1.
CD: MAX = 2 dan MIN = 0.
![Page 42: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/42.jpg)
Majalah: MAX = 0 dan MIN = 0.
6. Menampilkan koleksi yang tidak pernah dipinjam.
Menampilkan kode koleksi dari tabel KOLEKSI yang tidak ada di dalam tabel
TRANSAKSI dengan perintah MINUS sehingga diperoleh data kode koleksi yang
tidak pernah dipinjam.
7. Menampilkan pegawai yang berusia di antara 25-35 tahun.
Menampilkan nama dan usia dari petugas perpustakaan yang berusia di antara 25
dan 35 dengan cara mengurangi tahun ini dengan tahun lahir sehingga diperoleh tiga
petugas yang berusia 29, 30, dan 26.
8. Menampilkan pegawai yang memiliki nama berawalan ‘A’ dan anggota yang
memiliki nama berakhiran ‘A’.
![Page 43: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/43.jpg)
Menampilkan gabungan dari id_librarian dan nama pegawai yang memiliki nama
berawalan huruf A dari tabel LIBRARIAN dan id_user dan nama anggota yang
memiliki nama berakhiran huruf A dari tabel ANGGOTA menggunakan perintah
UNION.
![Page 44: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/44.jpg)
LAPORAN PRAKTIKUM BASIS DATA
TRIGGER
DISUSUN OLEH:
FEMBI REKRISNA GRANDEA PUTRA
M0513019
ASISTEN DOSEN:
1. ALFI MUHAMMAD ANWAR (M0512003)
2. AMELIA RAHMAN (M0512004)
3. RIO PAHLEVY RIDLO YUDHA BHAKTI (M0512048)
4. YANIAR RAHMAH (M0512059)
JURUSAN INFORMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SEBELAS MARET
SURAKARTA
RABU, 16 DESEMBER 2014
![Page 45: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/45.jpg)
1. Membuat tabel items, orders, dan orders_audit.
2. Membuat sequence items_pakaian_seq, items_aksesoris_seq, dan order_seq yang
berfungsi untuk membuat urutan nomor yang akan berfungsi pada primary key
dengan nomor yang unik.
3. Membuat trigger.
a. Trigger digunakan untuk mengurutkan dan menyesuaikan primary key pada
tabel.
![Page 46: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/46.jpg)
Contohnya adalah mengubah tabel items dengan memasukkan data yang
seharusnya berkode A, tapi karena dimasukkan dengan jenis pakaian, maka
jenisnya akan menjadi P.
Dengan adanya trigger yang telah dibuat sebelumnya, menghasilkan:
b. Membuat trigger odrers_after_delete yang akan digunakan untuk emasukkan
data pada tabel orders_audit apabila ada data pada tabel orders yang dihapus.
Data yang masuk ke orders_audit adalah data yang dihapus, meliputi
order_id dari old.order_id, quantity dari old.quantity, total_cost dari
old.total_cost, delete_date dari sysdate, dan deleted_by dari v_username.
![Page 47: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/47.jpg)
Berikut ini adalah data awal dalam tabel orders.
Berikut ini adalah contoh penghapusan data dari tabel orders dengan order_id
= 1.
Maka data yang dihapus tersebut masuk ke tabel orders_audit.
c. Membuat trigger yang berfungsi untuk mengganti item_id jika tipe data
berubah. Sintaksnya adalah sebagai berikut:
Mengubah item_type dari aksesoris ke pakaian.
![Page 48: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/48.jpg)
Karena item_type diubah, maka item_id juga akan berubah.
d. Membuat trigger yang berfungsi agar setiap kali memasukkan data pada tabel
orders, maka total_cost akan dihitung berdasarkan quantity * cost_per_item
dari tabel items.
Menambahkan data ke tabel orders tanpa total_cost.
Sehingga total_cost akan menjadi hasil kali dari quantity dengan
cost_per_item.
![Page 49: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/49.jpg)
RESPONSI BASIS DATA
DISUSUN OLEH:
FEMBI REKRISNA GRANDEA PUTRA
M0513019
ASISTEN DOSEN:
1. ALFI MUHAMMAD ANWAR (M0512003)
2. AMELIA RAHMAN (M0512004)
3. RIO PAHLEVY RIDLO YUDHA BHAKTI (M0512048)
4. YANIAR RAHMAH (M0512059)
JURUSAN INFORMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SEBELAS MARET
SURAKARTA
SELASA, 23 NOVEMBER 2014
![Page 50: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/50.jpg)
Jawaban
EASY (Kerjakan 2 soal) 1. Masukkan data mahasiswa baru
2. Tampilkan nama dosen yang memiliki nama mengandung huruf “A”
![Page 51: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/51.jpg)
3. Edit alamat dari mahasiswa bernama Jimmy Morrison menjadi “Surakarta”
4. Tampilkan mata kuliah yang memiliki jumlah sks = 3
![Page 52: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/52.jpg)
5. Hapus data mahasiswa dengan nim = M0511014
![Page 53: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/53.jpg)
MEDIUM (Kerjakan 1 soal) 1. Tampilkan jumlah mahasiswa yang mengambil matakuliah “Basis Data”.
2. Tampilkan namamakul yang diambil oleh Budi Sabarudin
![Page 54: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/54.jpg)
3. Buat tabel baru dengan nama pegawai dan atribut nip dan nama lalu tambahkan kolom baru alamat.
![Page 55: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/55.jpg)
4. Tampilkan semua dosen yang mengampu mata kuliah dengan kode matakuliah PBO dan BD.
5. Tampilkan nama-nama mahasiswa yang memiliki nilai n_abses dan n_tugas = B diurutkan berdasarkan nama (descending).
![Page 56: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/56.jpg)
HARD (Kerjakan 1 soal)
1. Tampilkan nama-nama mahasiswa yang mendapatkan n_tugas = B digabung dengan
nama-nama mahasiswa yang mendapatkan n_mid = C.
![Page 57: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/57.jpg)
2. Tampilkan mata kuliah yang diambil oleh Andi Abdullah dan Muhammad Abdullah yang
diampu oleh dosen wiharto.
![Page 58: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/58.jpg)
3. Masukkan data mahasiswa baru, selanjutnya mahasiswa tersebut mengambil mata kuliah
Basis Data dan Statistika. Kemudian mata kuliah yang diampu oleh Sari Widyasihwi
mendapatkan nilai = A.
![Page 59: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/59.jpg)
![Page 60: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/60.jpg)
![Page 61: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/61.jpg)
4. Tampilkan dosen yang mengampu mata kuliah Jaringan Syaraf Tiruan atau Aljabar Linear
digabungkan dengan dosen yang memiliki mahasiswa dengan nama Budi Sabarudin.
![Page 62: Laporan Praktikum Basis Data](https://reader035.vdocument.in/reader035/viewer/2022081800/587282aa1a28abc7068b685b/html5/thumbnails/62.jpg)
5. Tampilkan nama-nama dosen yang matakuliahnya diambil oleh Alihudin Subur.