Basdat 2 PDF
Basdat 2 PDF
BASIS DATA 1
D3 Manajemen Informatika
Fakultas Teknik
Universitas Trunojoyo
1
MODUL I
MYSQL
Tujuan :
1. 1. Memahami tentang sistem database
2. 2. Memahami instalasi MySQL di lingkungan Windows
3. 3. Memahami dasar-dasar MySQL.
Tug as Pendahuluan
1. Apa yang anda ketahui tentang mysql, jelaskan
2. Apa perbedaan instalasi mysql diling kungan windows dengan
linu x
3. sebutkan operator dan fungsi dalam mysql !
1. Dasar Teori
Basis data adalah sekumpalan in formasi yang diatur agar mudah dicari.
Dalam art i u mu m basis data adalah sekumpulan data yang diproses dengan bantuan
ko mputer yang memungkin kan data dapat diakses dengan mudah dan tepat, yang
dapat digambarkan sebagai akt ifitas dari satu atau lebih organisasi yang berelasi.
Pengertian MYS QL
Database MYSQL merupakan sistem manajemen basis data SQL yang
sangat terkenal dan bersifat Open Source. MySQL dibangun, didistribusikan dan
didukung oleh MYSQL AB. M YSQL AB merupakan perusahaan komersial yang
dibiayai o leh pengembang M YSQL
Ti pe Data
Data yang terdapat dalam sebuah tabel berupa field-field yang berisi nilai
dari data tersebut. Nilai data dalam field memiliki tipe sendiri-sendiri. M YSQL
mengenal beberapa tipe data field yaitu :
§ Tipe data numerik
2
§ Tipe data numerik dibedakan dalam dua macam kelo mpok, yaitu integer dan
floating point. Integer digunakan untuk data bilangan bulat sedangkan floating
point digunakan untuk bilangan desimal.
§ Tipe data string
String adalah rangkaian karakter. Tipe-tipe data yang termasuk dalam tipe data
string dapat dilihat pada tabel 8.1.2.b berikut:
Tabel 8.1.2.b Tipe Data St ring
Tipe Data Kisaran Nilai
CHAR 1-255 karakter
VA RCHAR 1-255 karakter
TINYTEXT 1-255 karakter
TEXT 1-65535 karakter
MEDIUMTEXT 1-16777215 karakter
LONGTEXT 1-424967295 karakter
§ Tipe data char() dan varchar()
Tipe data char() dan varchar() pada prinsipnya sama, perbedaannya hanya
terletak pada jumlah memori yang dibutuhkan untuk penyimpanannya.
Memori yang dibutuhkan untuk tipe data char() bersifat statis, besarnya
bergantung pada berapa jumlah karakter yang ditetapkan pada saat field
tersebut dideklarasikan. Pada t ipe data varchar() besarnya memo ri
penyimpanan tergantung pada jumlah karakter ditambah 1 byte, dapat dilihat
pada tabel 8.1.2.c berikut ini:
Tabel 8.1.2.c Letak Perbedaan Ju mlah Memori
Nilai Char(4) Memori Varchar Memori
Penyimpanan (4) Penyimpanan
’’ ’’ 4 bytes ’’ 1 byte
’ab’ ’ab’ 4 bytes ’ab’ 3 bytes
’abcd’ ’abcd’ 4 bytes ’abcd’ 5 bytes
’abcdefgh’ ’abcd’ 4 bytes ’abcd’ 5 bytes
§ Tipe data tanggal
Untuk tanggal dan jam, tersedia tipe-t ipe data field berupa DATETIM E,
DATE, TIM ESTAMP, TIM E dan YEAR. Masing-masing tipe mempunyai
kisaran nilai tertentu. MYSQL akan memberikan peringatan kesalahan (error)
apabila tanggal atau waktu yang dimasukkan salah. Kisaran nilai dan besar
memo ri penyimpanan yang diperlukan untuk masing-masing tipe dapat dilihat
pada tabel 8.1.2.d berikut ini:
Tabel 8.1.2.d Tipe Data Tanggal
Tipe Data Kisaran Nilai Memori
Penyimpanan
DATETIM E 1000-01-01 00:00 sampai 9999-12-31 3 byte
23:59:59
3
DATE 1000-01-01 sampai 9999-12-31 8 byte
TIM ESTAMP 1970-01-01 00:00:00 sampai 2037 4 byte
TIM E -839:59:59 sampai 838:59:59 3 byte
YEA R 1901 sampai 2155 1 byte
Operator MYS QL
MYSQL mendukung penggunaan operator-operator dan fungsi-fungsi
diantaranya:
§ Operator Arit metika
Suatu ekspresi yang melibatkan tipe data bilangan (NUM ERIK) dan tanggal
(DATE) menggunakan ekspresi aritmat ika. Dapat dilihat pada tabel 8.1.3.a
berikut ini:
Tabel 8.1.3.a Operator arit mat ika M YSQL
Operator Keterangan
+ Tambah
- Kurang
* Kali
/ Bagi
Mod () Modulus
§ Operator Pembandingan
Suatu ekspresi yang dapat digunakan pada klausa WHERE dan mempunyai
sintax sebagai berikut: WHERE expr operator value. Tabel 8.1.3.b
menunjukan operator pembanding pada MYSQL berikut ini:
Tabel 8.1.3.b Operator Pembanding M YSQL
Operator Keterangan
= Sama Dengan
> Lebih Besar
< Lebih Kecil
>= Lebih Besar atau Sama Dengan
<= Lebih Kecil atau Sama Dengan
<> Tidak Sama Dengan
§ Operator Logika
Operator in i digunakan untuk membandingkan dua nilai variabel yang bertipe
boolean.
§ Operator Karakter
Operator untuk membentuk pencarian string yang sesuai dengan nilai yang
mencantumkan pada kondisi. Kondisi pencarian dapat berisi karakter , ada 3
symbol khusus berikut ini dapat dilihat pada tabel 8.1.3.d berikut ini:
Tabel 8.1.3.d Tabel Operator Karakter
Operator Keterangan
% Sembarang karakter berapapun ju mlahnya
4
_ Sembarang satu karakter
[] Sembarang karakter yang terletak dalam kurung
siku
§ Operator Lain-lain
Operator yang digunakan untuk menguji n ilai-nilai yang ada dalam list (tanda
kurung) dan dapat juga untuk menampilkan baris berdasarkan suatu jangkauan
(range) nilai. Ada 2 symbol tersebut dapat dilihat pada tabel 8.1.3.e berikut in i:
Tabel 8.1.3.e Operator lain-lain
Operator Keterangan
IN Dalam
BETW EEN Diantara
2. Kegiatan Praktikum :
Instalasi MySQL-5.0.22-WIN32 :
1. Jalankan file setup mysql, yaitu mysql-5.0.22-wi n32.exe, maka akan muncul
dialog instalasi sebagai berikut :
2. Pilih tombol Next, kemudian muncul d ialog tipe instalasi sebagai berikut :
5
3. Pilih Custom, kemudian pilih to mbol Next. Kemud ian tampil d ialog fitur
program sebagai berikut :
4. Klik tanda silang pada Developer Components, kemudian pilih This feature
will be installed on local hard dri ve seperti gambar berikut :
6
5. Kemudian pilih tombol Change..., pada fol der name ubah menjad i sesuai
dengan gambar berikut ini :
6. Pilih OK, kemudian pilih tombol Next, dan pilih to mbol Install, maka proses
instalasi dimulai.
7
7. Berikutnya muncul dialog account, pilih Skip Sign-Up dan klik to mbol Next,
maka akan muncul dialog sebagai berikut :
8. Klik to mbol Finish dan tombol Next, maka akan muncul dialog sebagai
berikut :
8
9. Pilih Standard Configuration dan klik to mbol Next, lalu muncul gambar
berikut :
9
10. Pilih tombol Next. Kemud ian muncul gambar berikut ini. Masukkan password
yang diinginkan pada kota isian New root password dan Confirm berikut ini
untuk sekuritas, misalnya 123456. Klik to mbol Next.
10
Melakukan Koneksi ke MySQL :
Cara 1 :
1. Melalui DOS Pro mpt, masuk ke direktori utama MySQL dengan cara sebagai
berikut (yang diketik hanya yang digaris bawah) :
C:\>cd \ mysql\ bin
2. Setelah itu ketikkan perintah berikut (yang diket ik hanya yang digaris bawah) :
C:\>mys ql\ bin\ mys ql –u root – p
maka akan diminta untuk memasukkan passoword, isikan password yang
digunakan pada saat instalasi, yaitu 123456.
3. Selanjutnya akan ada respon dari server seperti gambar berikut :
Tamp ilan tersebut di atas menandakan bahwa telah berhasil melaku kan
koneksi ke server.
Cara 2 :
1. Dari menu Start > All Programs > MyS QL > MySQL Server 5.0 > MySQL
Command Line Client, maka akan muncul tamp ilan seperti berikut ini :
11
2. Masukkan password yang telah ditentukan pada saat instalasi, yaitu : 123456
kemudian tekan enter.
Constraint
Constraint adalah batasan atau aturan yang ada pada table.
MySQL menyediakan beberapa tipe constraint berikut :
• NOT NULL
Suatu kolo m yang didefinisikan dengan constraint NOT NULL tidak boleh
berisi
nilai NULL. Ko lo m yang befungsi sebagai kunci primer (primary key)
otomatis tidak boleh NULL.
• UNIQUE
Mendefinisikan suatu kolom menjad i bersifat unik, artinya antara satu data
dengan data lainnya namanya tidak bo leh sama, misal alamat email.
12
• PRIMARY KEY
Constraint PRIMARY KEY membentuk key yang unik untuk suatu table.
• FOREIGN KEY
FOREIGN KEY constraint didefin isikan pada suatu kolom yang ada pada
suatu table, dimana kolo m tersebut juga dimiliki oleh table yang lain sebagai
suatu PRIMA RY KEY, biasa dipakai untuk menghubungkan antara 2 tabel.
Perintah MySQL untuk membuat tabel seperti diatas bisa dengan 2 cara sbb :
13
create table anggota (
nomor int(6) not null,
nama char(40) not null,
email char(255) not null,
alamat char(80) not null,
kota char(20) not null,
primary key (nomor)
);
3. Tug as
1. Buatkan dengan perintah mysql database dengan nama perusahaan
2. Di dalam database perusahaan terdapat tabel karyawan, barang,
departemen dan produksi
3. Tentukan field name masing-masing table
4. Tentukan primary key pada setiap tabel
14
MODUL II
MEMBUAT ER-DIAGRAM
Tujuan :
v Prakt ikan dapat memahami dan membuat ER-Diagram
Tug as Pendahuluan
1. Tentukan Database serta field-fieldnya yang ingin anda buat!
2. Buatlah ER d iagramnyadengan pemodelan El-Masri!
3. Apakah yang dimaksud dengan normalisasi? Jelaskan !
Dasar Teori
Model data adalah sekumpulan cara / peralatan / tool untuk mendeskripsikan data-
data, hubungannya satu sama lain, semantiknya, serta batasan konsistensi.
Ada dua model data, yaitu : Entity Relationship Diagram (ERD) dan model
relasional. Keduanya menyediakan cara untuk mendeskripsikan perancangan basis
data pada peringkat logika.
· Model ERD atau Conceptual Data Model (CDM) : model yang dibuat
berdasarkan anggapan bahwa dunia nyata terdiri dari ko leksi obyek-obyek
dasar yang dinamakan entitas (entity) serta hubungan (relationship) antara
entitas-entitas itu.
· Model Relasional atau Physical Data Model (PDM) : model yang
menggunakan sejumlah tabel untuk menggambarkan data serta hubungan
antara data-data tersebut. Setiap tabel mempunyai sejumlah ko lo m di
mana setiap ko lo m memiliki nama yang unik.
15
atribut tunggal atau gabungan atribut-atribut yang secara unik dapat
digunakan untuk membedakannya dari entitas kuat yang lain ).
· Weak entity (entitas lemah) : entitas yang keberadaannya sangat
bergantung pada keberadaan entitas yang lainnya. Entitas lemah tidak
memiliki art i apa-apa dan tidak dikehendaki kehadirannya dalam diagram
ER tanpa kehadiran entitas di mana mereka bergantung.
Agregasi adalah suatu keadaan di mana suatu relasi hanya dapat direalisasikan
setelah relasi yang lain ada terlebih dahulu. Relasi yang bertipe agregasi tidak
dimungkinkan ada jika relasi yang men jadi prasyaratnya tidak terealisasi. Contoh:
Sesungguhnya agregasi dapat dipandang sebagaimana relasi pada umu mnya (yang
menghubungkan 2 entitas). Karena relasi ini dibentuk dari relasi lain (relasi
prasyarat) yang secara kronologis lebih dulu terbentuk, maka
pengimplementasiannya juga harus dilakukan setelah relasi prasyarat tersebut
terimp lementasikan. Selan jutnya kita tinggal meninjau derajat relasi dari relasi
agregasinya.
Mengapa jika terdapat set entitas yang sama muncul beberapa kali dalam satu set
ER-Diagram in i harus dihindari?
· Total constraint adalah constraint yang mana data dalam entitas yang
memiliki constraint tersebut terhubung secara penuh ke dalam entitas dari
relasinya.
· Constraint partial adalah constraint yang mana data dalam entitas yang
memiliki constraint tersebut terhubung ke dalam entitas dari relasinya.
16
Relasi satu :
Relasi dua :
Relasi tiga
Relasi empat:
17
· Entity 7 to entity 8 : kardinalitas : one to one dengan detail min imal 0
maksimalnya 1. Dependensi : entitas 7 dan entitas 8 tidak saling
ketergantungan.
· Entity 8 ke entity 7 : kard inalitas : one to one dengan detail minimal 1
maksimal 1. Dependensi : entitas 8 dan entitas 7 tidak saling
ketergantungan.
Relasi lima
Relasi tujuh
· 1NF : tahap normalisasi dasar, yang mana masih belu m sampai pada
tingkat efekt ifitas maksimal, masih banyak kemungkinan terjadinya
redundancy data atau duplikasi data.
18
· BCNF : tahap normalisasi setelah 3NF , yang mana efektifitas telah
mencapai maksimal, kemungkinan terjad inya redundancy data dan
duplikasi data lebih kecil daripada 1NF.
Tug as :
19
MODUL III
DDL I
Tujuan :
v Prakt ikan dapat memahami dan membuat database
v Prakt ikan dapat memahami dan membuat table dari database
v Mahasiswa mampu membuat script untuk pembuatan tabel dan
mengupdate tabe
Tug as Pendahuluan
1. Buat resume tentang DDL kemud ian pelajari
Dasar Teori
DDL atau Data Definition Language adalah bagian dari sql yang digunakan
untuk mendefin isikan data dan objek database. Apabila perintah ini d igunakan,
entri akan d ibuat ke dalam kamus data dari SQL. Didalam kategori ini terdapat
perintah-perintah sebagai berikut :
Perintah Keterangan
Create Tab le Membuat tabel
Create Index Membuat index
Alter Table Mengubah atau menyisipkan kolo m ke dalam tabel
Drop Table Menghapus tabel dari database
Drop Index Menghapus index
Grand Memberikan ijin akses kepada user
20
Praktikum
a. Membuat Database
Syntax : CREATE DATA BASE namadatabase;
namadatabase tidak boleh mengandung spasi dan tidak boleh memiliki nama
yang sama antar database.
Syntax tambahan : untuk menampilkan daftar nama database yang ada pada
mysql menggunakan perintah :
SHOW DATA BASES;
b. Menghapus Database
Syntax : DROP DATABASE namadatabase;
Database yang akan dihapus sesuai dengan namadatabase. Berikut ini perintah
untuk menghapus database dengan nama rental :
c. Membuat Tabel
Sebelu m membuat suatu tabel, terlebih dahulu harus memilih salah satu
database sebagai database aktif yang akan digunakan untuk menyimpan tabel-
tabel dengan menggunakan syntax : USE namadatabase; Syntax membuat table
:
CREATE TA BLE namatabel
(
Field1 TipeData1,
Field2 TipeData2
);
namatabel tidak boleh mengandung spasi (space). Field1 dan TipeData1
merupakan nama ko lo m pertama dan tipe data untuk kolo m pertama. Jika ingin
membuat tabel dengan kolom lebih dari satu, maka setelah pendefinisian tipe
data sebelumnya diberikan tanda ko ma (,).
Syntax tambahan :
Untuk menamp ilkan daftar nama tabel yang ada pada database yang sedang
aktif/d igunakan (dalam hal ini database rental) :
SHOW TABLES;
Untuk menampilkan deskripsi tabel (dalam hal ini jenisfilm) syntaxnya adalah :
DESC namatabel;
d. Menghapus Tabel
Syntax : DROP TA BLE namatabel;
Tabel yang akan dihapus sesuai dengan namatabel, berikut ini perintah untuk
menghapus tabel dengan nama jenisfilm :
21
e. Mendefinisikan null/not null
Syntax :
CREATE TA BLE namatabel
(
Field1 TipeData1 NOT NULL,
Field2 TipeData2
);
Tug as :
1. Buatlah sebuah database sesuai dengan ER-Diagram yang anda buat ( dari
Power designer generate) script pembuatan tabelnya dengan perintah
DDLkemudian beri nama database sesuai dengan nama mahasiswa!
2. Buatlah tabel-tabelnya yang juga sesuai dengan ER-Diagram yang anda
buat!
22
MODUL IV
DDL II
Tujuan :
v Prakt ikan dapat memahami dan membuat database
v Prakt ikan dapat mengerti tentang Primary key
Tug as Pendahuluan
1. Buat desain entitas dan relasi dari database yang akan dibuat
dalam praktiku m (setiap entitas sudah terdapat primary key)
Dasar Teori
Data Definition Language (DDL) digunakan untuk membuat dan
menghancurkan database dan objek database. Perintah-perintah ini terutama akan
digunakan oleh database administrator selama fase setup dan penghapusan proyek
database. Mari kita melihat struktur dan penggunaan perintah DDL empat dasar:
CREAT E
Instalasi sistem manajemen database (DBMS) pada komputer memungkin kan
Anda untuk membuat dan mengelola banyak database independen
US E
Perintah USE memungkin kan Anda untuk menentukan database yang ingin bekerja
dengan Anda dalam DBMS
Sangat penting untuk selalu sadar akan database Anda bekerja dalam sebelum
mengeluarkan perintah SQL yang meman ipulasi data.
ALTER
Setelah Anda telah membuat tabel dalam database, Anda mungkin ingin
memod ifikasi definisi itu. The ALTER co mmand allows you to make changes to
the structure of a table without deleting and recreating it. ALTER perintah yang
memungkinkan Anda untuk membuat perubahan pada struktur tabel tanpa
menghapus dan menciptakan
23
DROP
Perintah terakhir dari Data Definition Language, DROP, memungkinkan kita untuk
menghapus seluruh objek database dari DBMS. Gunakan perintah ini dengan hati-
hati! Ingat bahwa perintah DROP menghapus data keseluruhan struktur dari
database Anda. Jika Anda ingin menghapus catatan individu, gunakan perintah
DELETE Manipulasi Data Bahasa.
Praktikum:
a. Mendefinisikan Nilai Default
Nilai default adalah nilai yang otomatis diberikan oleh sistem untuk suatu
kolo m ketika ada penambahan baris baru, sementara nilai pada ko lo m tersebut
tidak diisi o leh pengguna. Syntax :
CREATE TA BLE namatabel
(
Field1 TipeData1,
Field2 TipeData2 DEFA ULT n ilai
);
nilai adalah n ilai defau lt dari ko lo m tersebut.
Atau
atau
namatabel adalah nama tabel yang akan diubah nama kolo mnya,
namalamako lo m adalah kolo m yang akan diganti namanya, namabarukolo m
adalah nama baru ko lo m, t ipedatanya adalah tipe data dari kolo m tersebut.
Berikut ini perintah untuk mengubah nama ko lo m keterangan men jadi ket :
Tug as :
1. Beri Primary key pada tiap tabel yang anda buat pada database
2. Tambahkan satu kolo m baru pada database yang anda buat
3. Ganti nama salah satu kolo m anda dengan perintah yang tertera pada modul
26
MODUL V
DML (DATA MANIPULATION LANGUAGE)
Tujuan :
v Prakt ikan dapat memahami dan mengisi tabel dalam database
v Prakt ikan dapat memahami dan meman ipulasi data dalam database
Tug as Pendahuluan
v Apa yang anda ketahui tentang DML?
v Apa yang anda ketahui tentang perintah INSERT, UPDATE dan
DELETE?
v Sebutkan dan jelaskan macam-macam klausa maupun operator yang
terdapat dalam perintah SELECT!
Dasar Teori
DM L (Data Manipulation Language) adalah bahasa yang
memungkinkan pengguna mengakses atau memanipulasi data seperti yang diatur
oleh model data. Manipulasi data adalah :
· Pengambilan informasi yang disimpan dalam basisdata
· Penempatan informasi baru dalam basisdata
· Penghapusan informasi dari basisdata
· Modifikasi informasi yang disimpan dalam basisdata
DM L (Data Manipulation Language) merupakan bahasa yang bertujuan
memudahkan pemakai untuk mengakses data sebagaimana direpresentasikan oleh
model data. Ada 2 jenis DM L, yaitu :
· Prosedural, yang mensyaratkan agar pemakai menentukan, data apa yang
diinginkan serta bagaimana cara mendapatkannya.
· Nonprosedural, yang membuat pemakai dapat menentukan data apa yang
diinginkan tanpa menyebutkan bagaimana cara mendapatkannya.
Query adalah pernyataan yang meminta pengguna mengamb il info rmasi. Bag ian
DM L yang terlibat dalam pengamb ilan informasi disebut bahasa query. Istilah
bahasa query sering disamakan dengan istilah bahasa manipu lasi data. Sedangkan
SQL adalah sebuah sintaks untuk mengeksekusi query.
Praktikum
Coba semua contoh operasi DM L d i bawah ini :
1. Pernyataan INS ERT INTO
27
Pernyataan INSERT INTO digunakan untuk memasukkan data baru
pada tabel.
Sintaks :
INSERT INTO nama_tabel
VA LUES (n ilai1, n ilai2, ...)
Urutan nilai yang diletakkan dalam tanda kurung disesuaikan dengan urutan kolom
dalam tabel. A kan tetapi kita bisa menentukan kolo m-kolo m yang akan diisi
dengan data baru, yaitu :
INSERT INTO nama_tabel (ko lo m1, kolo m2, ...)
VA LUES (n ilai1, n ilai2, ...)
Kolo m-ko lo m yang tidak disebutkan pada Insert secara otomatis akan diisi dengan
Null dan ko lo m yang tidak d isebutkan dalam Insert haruslah yang tidak Not Null.
Contoh :
Insert Into Mahasiswa
Values ('01012','Irwan','Jl.Beo 23','Bogor')
2. Pernyataan UPDATE
Pernyataan UPDATE digunakan untuk modifikasi data dalam tabel.
Sintaks :
UPDATE nama_tabel
SET nama_ko lo m = nilai_baru
WHERE nama_kolo m = nilai
Pada pernyataan diatas :
· SET untuk menentukan kolo m yang akan diubah dan nilai penggantinya.
· WHERE menentukan kondisi dari baris-baris yang akan diganti.
Contoh :
Update Mahasiswa Set Nama ='Riri'
Where NPM='01010'
Dalam perintah DELETE jika kita ingin menghapus semua data pada tabel tanpa
menghapus tabel maka Where tidak perlu d isebutkan.
28
DELETE FROM nama_tabel
Atau
DELETE * FROM nama_tabel
4. Pernyataan S ELECT
Secara u mu m perintah SELECT hanya difungsikan untuk menampilkan data
yang ada di dalam suatu tabel. Tetapi dalam pengembangannya, perintah ini akan
men jadi sebuah perintah yang sangat penting dan berpengaruh hingga saat
pemrograman di stored procedures dan triggers. Sementara ini dalam basis data 1
yang kita bahas hanya pernyataan SELECT yang digunakan untuk memilih data
dari tabel, yang mana hasilnya disimpan dalam tabel hasil yang disebut Result Set.
Sintaks :
SELECT nama_ko lo m
FROM nama_tabel
Contoh :
Select NPM, Nama
From Mahasiswa
à Merupakan pernyataan untuk menampilkan kolo m NPM dan Nama yang
terdapat pada tabel Mahasiswa.
NPM Nama
----- ------------------------------
01001 Rudi
01002 Iwan
01005 Wati
01006 Jihan
01007 Nova
01009 Budi
4.1 Distinct
29
Untuk memilih hanya nilai yang berbeda, gunakan pernyataan SELECT
DISTINCT.
Sintaks :
SELECT DISTINCT nama_ kolo m
FROM nama_tabel
Contoh :
Select NPM, Nama
From Mahasiswa
Where NPM = ’01001’
Perlu d iperhatikan bahwa kita menggunakan tanda petik tunggal (‘ ‘) pada contoh
diatas. SQL menggunakan tanda petik tunggal pada nilai teks, sedangkan nilai
numerik tidak diberi tanda petik.
Tug as :
Dari topik pembuatan aplikasi basis data yang telah anda buat, buatlah masing-
masing perintah DM L berikut :
1. Sisipkan min 10 baris data dalam masing-masing tabel
2. Tambahkan min 2 operasi update, delete, dan select
31
MODUL VI
DML (DATA MANIPULATION LANGUAGE)
Tujuan :
v Prakt ikan dapat memahami dan meman ipulasi data dalam database
dengan lebih luas lagi.
Tug as Pendahuluan
v Sebutkan dan jelaskan macam-macam klausa maupun operator yang
terdapat dalam perintah SELECT selain yang sudah disebutkan di
modul sebelu mnya (modul V)!
v Buat contoh perintah SQLnya, masing-masing min 1 !
Dasar Teori
Perintah SELECT adalah perintah untuk menampilkan data yang ada di
dalam suatu tabel, yang mana dalam pengembangannya perintah ini akan menjadi
sebuah perintah yang sangat penting dan berpengaruh hingga saat pemrograman di
stored procedures dan triggers. Selain perintah-perintah SELECT yang dibahas
dalam modul V masih ada banyak perintah-perintah SELECT lain, antara lain
perintah ALIAS, menampilkan data lebih dari 2 tabel, ORDER BY, A ND dan OR,
GROUP BY dan HA VING, fungsi agregate, dan beberapa perintah yang lain.
Praktikum
Coba semua contoh operasi DM L d i bawah ini :
1. ALIAS
Perintah Select dapat dilaku kan dengan memberikan nama ALIAS yaitu dapat
digunakan untuk mengganti nama_ko lo m dan nama_tabel.
32
Jika kita ingin membuat nama alias untuk kolo m NamaDepan menjad i ND dan
NamaBelakang menjad i NB, gunakan pernyataan SQL berikut :
SELECT NamaDepan AS ND, NamaBelakang AS NB
FROM Mahasiswa
Misalkan dalam tabel Mahasiswa field -fieldnya terdiri dari NRP, NamaDepan,
NamaBelakang, Tempat Lahir, TanggalLahir, Alamat, dan KodeJurusan.
Sedangkan di tabel Jurusan field-fieldnya adalah KodeJurusan dan NamaJurusan.
Berikut ini perintah untuk menampilkan semua data pada tabel Mahasiswa dan
Jurusan,
SELECT *
FROM Mahasiswa, Jurusan
Maka tabel yang dihasilkan dari perintah SQL diatas adalah semua field dari tabel
Mahasiswa dan tabel Jurusan akan ditampilkan, yaitu NRP, NamaDepan,
33
NamaBelakang, Tempat Lahir, TanggalLahir, Alamat, Mahasiswa.KodeJurusan,
Jurusan.KodeJurusan, dan NamaJurusan.
3. Kl ausa Order B y
Klausa ORDER BY d igunakan untuk mengurutkan data. Jika kita ingin
menamp ilkan nama mahasiswa berdasarkan urutan abjad, pernyataan SQL-nya
adalah :
SELECT *
FROM Mahasiswa
ORDER BY NamaDepan
Jika kita ingin menamp ilkan nama mahasiswa dan kotanya berdasarkan urutan
abjad, maka pernyataan SQL-nya adalah :
SELECT *
FROM Mahasiswa
ORDER BY NamaDepan, Kota
Jika kita ingin menampilkan nama mahasiswa dengan urutan abjad terbalik, maka
pernyataan SQL-nya adalah :
SELECT *
FROM Mahasiswa
ORDER BY NamaDepan DESC
Jika kita ingin menampilkan nama mahasiswa berdasarkan urutan abjad terbalik
dan nama kota berdasarkan urutan abjad, maka pernyataan SQL-nya adalah :
SELECT *
FROM Mahasiswa
ORDER BY NamaDepan DESC, Kota ASC
Jika kita ingin menampilkan nama mahasiswa yang lahir di satu kota, gunakan
pernyataan berikut :
SELECT Tempat_ Lahir, COUNT (Tempat_ Lahir) as Ju mlah
FROM Mahasiswa
GROUP BY Tempat_Lahir
5.2 HAVING
Klausa HA VING d isediakan untuk mendukung klausa GROUP BY.
Kegunaannya adalah untuk menentukan kondisi bagi GROUP BY. Kelo mpok yang
memenuhi kondisi HA VING saja yang akan dihasilkan.
Sintaks :
SELECT nama_ko lo m, COUNT (nama_ kolo m)
FROM nama_tabel
GROUP BY nama_ kolo m
HA VING COUNT (nama_kolo m) kondisi nilai
Misalnya, pernyataan untuk mencari kota yang menjad i tempat lahir oleh lebih dari
satu mahasiswa adalah:
SELECT Tempat_ Lahir, COUNT (Tempat_ Lahir) AS Ju mlah
FROM MAHASISWA
GROUP BY Tempat_Lahir
HA VING COUNT (Tempat_Lah ir) > 1
6.1 COUNT
Perintah yang digunakan untuk menghitung jumlah baris suatu kolom pada
tabel. Pernyataan SQL untuk menghitung jumlah baris kolom NamaDepan pada
tabel Mahasiswa adalah :
SELECT COUNT (NamaDepan) AS Ju mlahMahasiswa
FROM Mahasiswa
6.2 SUM
Perintah yang digunakan untuk menghitung jumlah nilai suatu kolom pada
tabel. Pernyataan SQL untuk menghitung jumlah nilai kolo m SKS pada tabel
Matakuliah :
SELECT SUM (SKS) AS TotalSKS
FROM Mataku liah
6.3 AVG
Perintah yang digunakan untuk menghitung rata-rata dari nilai suatu kolom
pada tabel. Contoh : perintah untuk menghitung rata-rata dari kolo m SKS pada
tabel Matakuliah :
SELECT A VG(SKS) AS RataSKS
FROM Mataku liah
6.4 MIN
Perintah yang digunakan untuk menamp ilkan nilai terkecil dari suatu kolom
pada tabel. Contoh : perintah untuk menampilkan nilai terkecil dari kolo m SKS
pada tabel Matakuliah :
SELECT M IN(SKS) AS Ju mlahMin imu m
FROM Mataku liah
6.5 MAX
36
Perintah yang digunakan untuk menampilkan nilai terbesar dari suatu
kolo m pada tabel. Contoh : perintah untuk menampilkan nilai terbesar dari kolo m
SKS pada tabel Matakuliah :
SELECT MAX(SKS) AS Ju mlahMaksimu m
FROM Mataku liah
7. Operator IN
Operator IN b isa digunakan jika kita mengetahui nilai pasti yang akan
diambil untuk setidaknya satu kolom.
Sintaks :
SELECT nama_ko lo m
FROM nama_tabel
WHERE nama_kolo m
IN (nilai1, nilai2, ...)
Untuk menampilkan mahasiswa dengan nama depan Hasan atau Adi, gunakan
pernyataan SQL berikut :
SELECT *
FROM Mahasiswa
WHERE NamaDepan
IN (’Hasan’, ’Adi’)
Tug as :
Dari topik pembuatan aplikasi basis data yang telah anda buat, buatlah masing-
masing perintah DM L berikut :
1. Buatlah perintah SQL untuk menamp ilkan data yang berasal dari dua
tabel dan tiga tabel.
2. Buatlah perintah SQL yang menggunakan klausa Order By, Group By,
dan Having.
3. Buatlah perintah SQL yang menggunakan operator AND, OR, IN dan
BETW EEN ... A ND.
4. Buatlah perintah SQL yang menggunakan fungsi Agregate (masing-
masing 1).
38
MODUL VII
Evaluasi Praktikum I
Tujuan :
v Prakt ikan lebih memahami dan mengimp lementasikan tentang ERD
v Prakt ikan lebih memahami dan mengimp lementasikan tentang DDL
dan DML
Tug as Pendahuluan
1. Buatlah ERD database
a. Nrp genap : data base perpusatakaan
b. Nrp ganjil : data base retail
Praktikum :
1. Implementasikan database anda pada Power Designer
2. Generate database anda pada MySql
3. Untuk selanjutnya Ikuti perintah yang diberikan o leh asisten praktiku m.
39
MODUL VIII
DML (DATA MANIPULATION LANGUAGE)
Tujuan :
v Prakt ikan dapat memahami dan meman ipulasi data dalam database
dengan lebih luas lagi.
Tug as Pendahuluan
v Apa yang anda ketahui tentang JOIN, UNION, INTERSECT,
EXCEPT, dan operator comparison ANY dan A LL?
v Buat contoh perintah SQL untuk SELECT yang menggunakan JOIN,
UNION, INTERSECT, EXCEPT, dan operator comparison ANY dan
ALL !
Dasar Teori
Perintah SELECT adalah perintah untuk menampilkan data yang ada di
dalam suatu tabel, yang mana dalam pengembangannya perintah ini akan menjadi
sebuah perintah yang sangat penting dan berpengaruh hingga saat pemrograman di
stored procedures dan triggers. Selain perintah-perintah SELECT yang dibahas
dalam modul V dan VI, masih ada banyak perintah-perintah SELECT lain yang
lebih luas lagi dalam penggunaan perintah SELECT.
Praktikum
Coba semua contoh operasi DM L d i bawah ini :
1. JOIN dan KUNCI
Terkadang kita harus memilih data dari dua tabel atau lebih untuk
mendapatkan hasil yang komplit. Oleh karena itu, kita harus melakukan sebuah
JOIN. Join merupakan operasi yang digunakan untuk menggabungkan dua tabel
atau lebih dengan hasil berupa gabungan dari kolo m-ko lo m yang berasal dari tabel-
tabel tersebut. Pada join sederhana, tabel-tabel digabungkan dan didasarkan pada
pencocokan antara kolo m pada tabel yang berbeda.
Tabel-tabel dalam sebuah basisdata dapat dihubungkan satu sama lain
menggunakan kunci. Kunci utama adalah sebuah kolo m dengan nilai unik untuk
masing-masing baris. Tujuannya adalah menggabungkan data antartabel tanpa
mengulangi semua data pada setiap tabel.
40
Misalnya kita memilih data dari dua tabel (tabel Mahasiswa dan Jurusan) dengan
mengacu pada kedua tabel sebagai berikut :
41
Misalkan, kita ingin menampilkan semua mahasiswa dan jurusan yang diambil,
jika ada. Kita dapat menggunakan pernyataan berikut :
SELECT MAHASISWA.NamaDepan, JURUSAN.NamaJurusan
FROM MAHASISWA LEFT JOIN JURUSAN
ON MAHASISWA.KodeJurusan = JURUSAN.KodeJurusan
LEFT JOIN akan memunculkan semua baris tabel pertama (Mahasiswa), bahkan
jika t idak ada pasangannya di tabel kedua (Jurusan). Jika ada baris pada tabel
Mahasiswa yang tidak ada pasangannya pada tabel Jurusan, maka ia pun akan
dimunculkan.
Untuk mengetahui siapa yang mengamb il jurusan Manajemen Info rmatika, kita
menggunakan pernyataan berikut :
SELECT MAHASISWA.NamaDepan
FROM MAHASISWA INNER JOIN JURUSAN
ON MAHASISWA.KodeJurusan = JURUSAN.KodeJurusan
WHERE JURUSAN.NamaJurusan = ‘Manajemen Informatika’
44
5. UNION, INTERS ECT dan EXCEPT
5.1 UNION
UNION merupakan operator yang digunakan untuk menggabungkan hasil
query, dengan ketentuan jumlah, nama dan tipe ko lo m dari masing-masing tabel
yang akan ditamp ilkan datanya harus sama.
Berikut ini perintah untuk memperoleh data pada tabel Mahasiswa dimana tempat
lahirnya Yogyakarta dan Surabaya :
SELECT NamaDepan, Tempat_Lahir
FROM Mahasiswa
WHERE Tempat_Lah ir = " Yogyakarta"
UNION
SELECT NamaDepan, Tempat_Lahir
FROM Mahasiswa
WHERE Tempat_Lah ir = "Surabaya";
Perintah di atas identik dengan :
SELECT NamaDepan, Tempat_Lahir
FROM Mahasiswa
WHERE Tempat_Lah ir = “Yogyakarta” OR Tempat_Lahir = “Surabaya”
Namun tidak semua penggabungan dapat dilakukan dengan OR, yaitu jika bekerja
pada dua tabel atau lebih.
Tug as :
Dari topik pembuatan aplikasi basis data yang telah anda buat, buatlah masing-
masing perintah DM L berikut :
5. Buatlah perintah SQL untuk menamp ilkan data yang berasal dari dua
tabel dan tiga tabel dengan menggunakan perintah JOIN.
6. Buatlah perintah SQL yang menggunakan UNION, INTERSECT, dan
EXCEPT.
7. Buatlah perintah SQL yang menggunakan operator comparison ANY dan
ALL.
46
MODUL 9
NORMALISASI DATA
Tujuan :
Mampu membangun desain logika basis data relasional untuk
menghasilkan struktur tabel yang normal.
PrePraktikum
1. Apakah yang anda ketahui tentang normalisasi?
2. Mengapa suatu tabel perlu dinormalisasikan?
3. Aturan-aturan normalisasi dinyatakan dalam istilah bentuk normal.
Apa yang disebut dengan bentuk normal?
4. Sebutkan dan jelaskan macam-macam dari bentuk normal agar dapat
dimanfaatkan untuk mempero leh tabel dan basis data yang lebih
baik?
1. Dasar Teori
1.1. Normalisasi
Normalisasi merupakan cara pendekatan dalam membangun desain
logika basis data relasional yang tidak secara langsung berkaitan dengan
model data, tetapi dengan menerapkan sejumlah aturan dan kriteria standar
untuk meghasilkan struktur tabel yang normal. Pada dasarnya desain logika
basis data relasional dapat menggunakan prinsip normalisasi maupun
transformasi dari model ER ke bentuk fisik.
Pada pembahasan tentang normalisasi data, digunakan istilah baru
yang disebut dengan functinal dependencies atau ketergantungan fungsional.
47
1.2. Ketergantungan Fungsional (Functional Dependencies)
Functional Dependency menggambarkan hubungan attributes dalam
sebuah relasi. Suatu atribut dikatakan functionally dependant pada yang lain
jika kita menggunakan harga atribut tersebut untuk menentukan harga atribut
yang lain. Simbo l yang digunakan adalah à untuk mewakili functional
dependency (à dibaca secara fungsional menentukan).
Notasi: A à B
A dan B adalah atribut dari sebuah tabel. Berart i secara fungsional A
menentukan B atau B tergantung pada A, jika dan hanya jika ada 2 baris
data dengan nilai A yang sama, maka nilai B juga sama. Diberikan 2 baris
r1 dan r2 dalam tabel T d imana AàB
Jika r1(A)=r2(A), maka r1(B) = r2(B)
Dimisalkan relasi n ilai_ mhs memiliki empat buah atribut/field yaitu
nama_ku l, n im, nama_ mhs dan nilai. Maka ketergantungan fungsional
pada relasi tersebut adalah:
a. nim à nama_ mhs
yang artinya bahwa atribut nama_mhs hanya tergantung pada atribut nim.
Hal in i dibukt ikan dari fakta: untuk setiap nilai n im yang sama, maka pasti
nilai nama_ mhs nya juga sama.
b. nama_ku l, n im à nilai
yang berarti bahwa atribut nilai tergantung pada atribut nama_kull dan
nim secara bersama-sama. Untuk ketergantungan fungsional seperti ini
sesuai dengan pengertian bahwa setiap nilai diperuntukkan pada
mahasiswa tertentu untuk mataku liah tertentu yang diamb il. Dalam arti
lain untuk nama_kul dan nim yang sama, maka nilai juga sama, karena
nama_ku l dan nim merupakan key (bersifat unik).
48
Adalah kebalikan dari notasi sebelumnya, dengan hanya melihat fakta
yang ada, yaitu:
a. nama_ku l non à nim
yang artinya atribut nim tidak tergantung pada atribut nama_ku l.
b. nim nonà nilai
yang artinya atribut nilai t idak hanya tergantung pada atribut nim,
karena tergantung pula pada atribut nama_ku l yaitu nama ku liah yang
diambil oleh n im.
Berikut ini akan d icontohkan normalisasi dari tabel ku liah yang memiliki
atribut:
Kode_kul Nama_ku l Sks Smstr Waktu Ruang Nama_d
C1234 Matematika 1 2 1 1 RKB-3 Devie
C1243 Riset Operasi 2 5 1 RKB-1 Rosa
C1342 ADSI 2 3 2 RKB-3 Anamisa
Tabel kuliah tersebut tidak memenuhi normalisasi pertama, karena terdapat
atribut waktu yang tergolong ke dalam atribut bernilai banyak. Agar tabel
49
tersebut dapat memenuhi 1NF, maka solusinya adalah mendeko mposisi tabel
kuliah menjad i:
1. Tabel Ku liah
Kode_kul Nama_ku l Sks Smstr Nama_dosen
C1234 Matematika 1 2 1 Devie
C1243 Riset Operasi 2 5 Rosa
C1342 ADSI 2 3 Anamisa
2. Tabel Jadwal
Kode_kul Waktu Ruang
C1234 1 RKB-3
C1243 1 RKB-1
C1342 2 RKB-3
50
C1342 7402030009 B
Jika pada tabel nilai, misalnya kita tambahkan sebuah atribut yang bersifat
redudan yaitu nama_ mhs, maka tabel n ilai ini dianggap melanggar 2NF.
Primary key pada tabel nilai adalah [kode_kul, nim]. Penambahan atribut baru
(nama_ mhs) akan menyebabkan adanya ketergantungan fungsional yang baru
yaitu nimànama_ mhs. Karena atribut nama_ mhs ini hanya memiliki
ketergantungan parsial pada primary key secara utuh (hanya tergantung pada
nim, padahal nim hanya bagian dari primary key). Bentuk normal kedua ini
dianggap belum memadai karena meninjau sifat ketergantungan atribut
terhadap primary key saja.
51
telah memenuhi 3NF. Hal ini dapat dibuktikan dengan memeriksa dua
ketergantungan fungsional pada tabel alamat tersebut, yaitu:
alamat_jalan nama_ kota à kode_pos
kode_pos à nama_kota
52
Relasi R dengan ketergantungan fungsional F termasuk dalam bentuk
BCNF jika untuk semua X à A yang ada dalam F. Dengan kata lain, R berada
dalam BCNF jika ketergantungan fungsional non-trivial pada R memiliki key
constraint.
2. Kegiatan Praktikum
1. Terdapat suatu bentuk tabel informasi seperti berikut in i :
Tabel 9.1. Informasi Buku
ISBN Judul Halaman Topik
979-533- Basisdata 60 Data Defin ition Language
791-2 Data Manipulation
Language
Data Control Language
978-532- Matematika 90 Probabilitas
792-3 Permutasi dan Ko mbinasi
977-534- PHP 90 Pemrograman
793-4 Internet
53
Pascal 16785 Anamisa A
11898 Ed i Fisika I 32000011 Devie A
Bagaimana bentuk tabel-tabel yang menyimpan data pada informasi
tersebut dengan menggunakan normalisasi untuk verifikasi tabel?
1. Tugas tambahan (ditentukan oleh asisten praktiku m)!
3. Tug as Akhir
Dari kasus ke-I dan ke-II pada kegiatan prakt iku m maka bagaimana solusi
pemecahan tabel yang didapatkan?
Kasus I: T= ----------------------
Permasalahan : -----------------------
So lusi pemecahan tabel :
I. Tabel -----------------------
II. Tabel -----------------------
III. Tabel -----------------------
Kasus II: T= ----------------------
Permasalahan : -----------------------
Solusi pemecahan tabel :
IV. Tabel -----------------------
V. Tabel -----------------------
VI. Tabel -----------------------
Catatan Praktikum
54
Modul 10
VIEW 1
Tujuan :
Membuat View untuk menampilkan data dari satu atau beberapa table dengan
membungkus suatu query SELECT yang ko mpleks menjadi lebih sederhana.
Tug as Pendahuluan
1. Apa yang anda ketahui tentang view?
2. Sebutkan langkah-langkah apa saja yang harus dilakukan apabila kita
akan membuat suatu view ! (buatkan dengan contoh table)
3. Apa saja kegunaan view dalam table, jelaskan dengan contohnya.!
1. Teori
View
View adalah query SELECT yang disimpan dalam database untuk menampilkan
data dari satu atau beberapa table. View juga disebut sebagai table virtual yang
digunakan untuk membungkus suatu query SELECT yang ko mp leks menjad i lebih
sederhana. Data-data yang termasuk kategori rahasia dapat diamankan dengan
menggunakan view.
Syntax
Pesan di atas akan tampil jika terjad i pembuatan view dengan menggunakan nama
yang sama dengan nama view yang lain.
Nama kolo m dari base table bisa diubah menjadi nama lain saat disimpan ke dalam
view dengan menggunakan COLUMN A LIAS
2. Kegiatan Praktikum
Buat tabel-tabel berikut ini :
1. Tabel Art ikel dengan struktur
56
3. Tabel Materi dengan struktur
6. Buat View dengan nama V_artikel1 untuk menamp ilkan data pada soal no 5
i
57
Jadi bisa anda lihat bahwa pada soal nomor 5 dan 7 mempunyai hasil yang sama,
sehingga dapat di simpulkan bahwa view dapat menampilkan kembali data yang
sama dengan lebih sederhana, dapat digunakan untuk mengerjakan query yang
tidak mungkin diselesaikan dengan cara biasa, view dapat digunakan untuk
menyimpan data rahasia karena tidak muncul pada database awal.
8. Buatkan view artikel2 untuk menamp ilkan judulart ikel, author dan tanggal, id
yang mempunyai bidang pemograman dan analisa sistem
9. Buatkan view guest1 untuk menampilkan semua data yang namanya diawali
dengan ”ahmad”, kemudian ganti namaauthor menjadi pengarang.
10. Buatkan view guest2 untuk menampilkan semua data yang namanya kemud ian
ganti namaauthor menjadi pengarang.
11. Buatkan view materi untuk menamp ilkan semua data yang namanya kemudian
ganti namaauthor menjadi pengarang.
3. Tugas :
1. Dari praktiku m d iatas, berikan kesimpulannya.
2. Buat table film dan jenis film dengan tampilan sebagai berikut jika
hasilnya diselect :
3. Isi tabel jenisfilm :
5. Berikut ini perintah untuk menamp ilkan semua data pada tabel jenisfilm
dan film :
58
6. Buat perintah view untuk :
a. Mengurutkan data film berdasarkan ko lo m judul, gunakan order by
dan simpan dengan v_film1
b. Menampilkan data pada tabel jenisfilm yang mana data pada kolom
jenis-nya tidak tercantum pada tabel film, gunakan NOT IN / not
exist dan simpan dengan nama v_film2
c. Menampilkan data pada tabel jenisfilm yang mana data pada kolom
jenis-nya tercantum pada tabel film menggunakan IN / exist dan
simpan dengan nama v_film3
d. Manampilkan kolo m jenis dan digabungkan dengan SUM(jml_film)
yang dikelo mpokkan berdasarkan ko lo m jenis pada tabel film dan
simpan dengan nama v_film4
e. Menampilkan kolo m judul dari tabel film dan kolo m harga dari tabel
jenisfilm(gunakan Operasi Jo in) dan simpan dengan nama v_film5
59
MODUL 11
View 2
Tujuan :
Membuat View untuk menampilkan data dari satu atau beberapa
table dengan membungkus suatu query SELECT yang ko mpleks
men jadi lebih sederhana.
Tug as Pendahuluan
1. Apa saja keuntungan dan kerugian menggunakan view
2. Mengapa View lebih optimal pemakaiannya dibanding
perintah select, jelaskan
3. kenapa view b isa dijad ikan sebagai kode rahasia untuk
menamp ikan suatu tabel, jelaskan.
I. Teori
1.1 Vie w
View dalam sql juga merupakan suatu table yang diturunkan dari table
yang lain. Tab le ini b ias berupa table dasar dari yang didefinisikan
sebelumnya.suatu view yang tidak perlu dalam bentuk fisiknya, bias berupa table
bayangan (virtual table), sehingga table dasar yang mempunyai tupel-tupel pada
dasarnya tersimpan dalam database. Pembatasan ini memungkinkan untuk
mengupdate operasi yang bias digunakan dalam view, tetapi tidak membatasi
dalam view queri.
60
1.2. Menghapus View
Queri yang sama juga bias didapatkan dengan menentukan dua hubungan
yang telah ada dalam relasi dasarnya, keuntungan utama view tersebut adalah
untuk menyederhanakan ketentuan tentang queri yang diperlukan, dan juga bias
digunakan untuk perangkat keamanan data.
Suatu view dari queri selalu menampilkan data yang terbaru, sebagai contoh bila
kita memodifikasi sebagaian tupel dalam table dasarnya dimana view tersebut
didefinisikan, maka secara otomatis akan berpengaruh pada view di queri
Jika tidak membutuhkan penampakan queri lag i, kita bisa menggunakan perintah
DROP VIEW untuk menghapusnya.
syntax :
DROP VIEW (nama view)
Update work_on1
Set pname =’product Y’
Where Lname = ‘smith’and Fname= ‘john’ and
Pname = ‘productX’
61
Secara u mu m kita tidak dapat men jamin bahwa setiap tamp ilan b isa diupdate.
Suatu tampilan yang diupdate hanya memungkinkan untuk satu kali update pada
relasi dasarnya yang dapat menghubungkan update tersebut pada tampilannya.
Sebagai kesimpulan dapat ditentukan :
· Suatu tampilan dengan definisi tunggal itu dapat diupdate bila attribute
tampilan berisi primary key atau beberapa candidate key dari relasi dasar,
sebab inilah yang menghubungkan antara view tupel dengan tupel dasar
tunggal.
· Tamp ilanm yang didefin isikan dengan menggunakan beberapa table yang
berhubungan umumnya tidak dapat diupdate
· Tamp ilan yang menggunakan group dan fungsi aggregate tidak dapat
diupdate
2. Kegiatn praktikum
1. Buat table golongan, jabatan dan pegawai dengan data sebagai berikut :
Tabel golongan :
Table jabatan
Tablepegawai
62
2. Buat view dengan nama latihanview1 untuk menampilkan seluruh data
pegawai yang jabatannya sebagai staff
3. Buat view dengan nama latihanview2 untuk menampilkan seluruh data
pegawai yang dua digit pertama nipnya di awali dengan angka 03
4. Buat view dengan nama lat ihanview3 untuk menamp ilkan data nip, nama
dan golongan pegawai serta tunjangan golongan yang didapat (gunakan
select mult iple tab le)
5. Buat view dengan nama latihanview4 untuk menampilkan seluruh data
pegawai beserta gaji total yang diperolehnya. Gaji total merupakan hasil
perhitungan dari gaji pokok d i tambahkan dengan tunjangan golongan
serta tunjangan keluarga
6. Hapuslah latihanview1
7. Buat view dengan nama latihanview5 untuk menampilkan data pegawai
yang gaji pokoknya paling tinggi.
3. TUGAS
1. Apakah yang dimaksud dengan update view?, buatkan contoh mengenai
update view dari suatu table view.
2. Mengapa dalam update view fungsi aggregate tidak dapat digunakan,
jelaskan alas an anda
3. Buat view dengan nama latihanview6 untuk menampilkan seluruh data
pegawai yang mana nama pegawai bambang purnomo ganti dengan joko
purnomo dan golongan ganti dengan manager
63
4. Buat view dengan nama latihanview7 untuk menampilkan seluruh data
pegawai yang berada dikota Surabaya atau yang mempunyai golongan B
(gunakan operasi union)
5. Hapuslah latihanview 4
6. Update view jabatan yang mana tunjangan jabatan manajer dari 500000
men jadi 1000000
7. Buat view dengan nama latihanview8 untuk menampilkan seluruh data
pegawai yang jabatannya sebagai supervisor
64
MODUL XII
Evaluasi Praktikum II
Tujuan :
v Prakt ikan dapat mengimplementasikan semua modul prakt iku m ini
pada aplikasi
Tug as :
1. Lanjutkan tugas pada evaluasi prakt iku m II pada modul VII untuk membuat
sebuah desain implementasinya. (CDM dan PDM )
2. Koneksikan pada program aplikasi yang anda buat (Program bebas)
3. Demo project kepada dosen yang bersangkutan
Atau
65