• Tidak ada hasil yang ditemukan

Buat desain entitas dan relasi dari database yang akan dibuat dala m pra ktiku m (setiap entitas sudah terdapat primary key)

Dalam dokumen BASIS DATA 1 MODUL PRAKTIKUM (Halaman 23-39)

DROP

Perintah tera khir dari Data De finition Language, DROP, me mungkinkan 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. Mende finisikan Nilai Default

Nila i default adalah nilai yang otomatis diberikan oleh sistem untuk suatu kolo m ketika ada pena mbahan baris baru, sementara nila i pada ko lo m tersebut tidak diisi o leh pengguna. Syntax :

CREATE TA BLE namatabel (

Fie ld1 Tipe Data1,

Fie ld2 Tipe Data2 DEFA ULT n ila i );

nila i adalah n ila i defau lt dari ko lo m tersebut.

b. Mende finisikan Primary Ke y Pada Tabel

Terdapat tiga cara untuk mendefin isikan p rimary key. Berikut in i adalah Syntax mendefinisikan primary key untuk Field 1

CREATE TA BLE namatabel (

Fie ld1 Tipe Data1 NOT NULL PRIMA RY KEY, Fie ld2 Tipe Data2

); Atau

CREATE TA BLE namatabel (

Fie ld1 Tipe Data1, Fie ld2 Tipe Data2, PRIMARY KEY(Fie ld1) );

atau

ALTER TA BLE na matabel ADD CONSTRAINT na maconstraint PRIMA RY KEY (na ma kolo m);

c. Menghapus Primary Ke y Pada Tabel Perintah :

Cara 1 : Jika primary key dibuat dengan menggunakan alter table : ALTER TA BLE na matabel DROP CONSTRAINT namaconstraint; Cara 2 : Jika primary key dibuat mela lui create table :

ALTER TA BLE na matabel DROP PRIMA RY KEY;

d. Menambah Kolom B aru Pada Tabel

Syntax :

ALTER TA BLE namatabel ADD fieldbaru tipe;

namatabel adalah na ma tabel yang akan d ita mbah fieldnya. Fie ldbaru adalah nama ko lo m yang akan ditambahkan, tipe adalah tipe data dari kolo m yang akan dita mbahkan.

e. Mengubah Ti pe Data atau Le bar Kolom Pada Tabel

Perintah :

ALTER TA BLE namatabel MODIFY COLUMN field tipe

namatabel adalah na ma tabel yang akan diubah tipe data atau lebar ko lo mnya. Fie ld adalah ko lo m yang akan diubah tipe data atau lebarnya. Tipe adalah tipe data baru atau tipe data lama dengan lebar kolo m yang berbeda.

f. Mengubah Nama Kol om

Syntax :

ALTER TABLE namatabel CHANGE COLUM N namalamakolom namabarukolom tipedatanya;

namatabel adalah nama tabel yang akan diubah nama kolo mnya, nama la mako lo m adalah kolo m yang akan diganti na manya, na mabarukolo 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 :

g. Menghapus Kolom Pada Tabel

Syntax :

ALTER TA BLE namatabel DROP COLUMN namak olom;

h. Mende finisikan Foreign Ke y Pada Tabel

Untuk mendefinisikan fore ign key, maka harus dipastikan bahwa tabel dan atribut yang dirujuk (tabel induk dari fore ign key) sudah didefinisikan terleb ih dahulu. Syntax :

(

Fie ld1 Tipe Data1, Fie ld2 Tipe Data2,

FOREIGN KEY (Fie ld2) REFERENCES namatabelinduk (namak olominduk)ON UPDATE CASCADE

ON DELETE NO ACTION )

atau

ALTER TA BLE namatabel ADD CONSTRAINT namaconstraint FOREIGN KEY (nama kolo m) REFERENCES namatabelinduk (namakolominduk) ON UPDATE CASCADE ON DELETE NO A CTION;

i. Menghapus Foreign Ke y

Perintah :

ALTER TA BLE namatabel DROP FOREIGN KEY namaconstraint;

Tug as :

1. Beri Prima ry key pada tiap tabel yang anda buat pada database 2. Tambahkan satu kolo m baru pada database yang anda buat

MODUL V

DML (DATA MANIPULATION LANGUAGE)

Dasar Te ori

DM L (Data Manipulation Language) adalah bahasa yang me mungkinkan pengguna mengakses atau me manipulasi data seperti yang diatur oleh model data. Manipulasi data adalah :

· Pengambilan informasi yang disimpan dala m basisdata

· Penempatan informasi baru dala m basisdata

· Penghapusan informasi dari basisdata

· Modifikasi informasi yang disimpan dala m basisdata

DM L (Data Manipulation Language) merupakan bahasa yang bertujuan me mudahkan pe maka i untuk mengakses data sebagaimana direpresentasikan oleh model data. Ada 2 jenis DM L, yaitu :

· Prosedural, yang mensyaratkan agar pe maka i menentukan, data apa yang diinginkan serta bagaimana cara mendapatkannya.

· Nonprosedural, yang me mbuat pe ma kai dapat menentukan data apa yang diinginkan tanpa menyebutkan bagaimana cara mendapatkannya.

Query adalah pernyataan yang me minta pengguna mengamb il info rmasi. Bag ian DM L yang terlibat dala m 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

Tujuan :

v Prakt ikan dapat me maha mi dan mengisi tabel dala m database

v Prakt ikan dapat me maha mi dan me man ipulasi data dala m 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 maca m-maca m klausa maupun operator yang terdapat dalam perintah SELECT!

Pernyataan INSERT INTO digunakan untuk me masukkan data baru pada tabel.

Sintaks :

INSERT INTO na ma_tabel VA LUES (n ila i1, n ilai2, ...)

Urutan nilai yang diletakkan dala m tanda kurung disesuaikan dengan urutan kolom dala m tabel. A kan tetapi kita bisa menentukan kolo m-kolo m yang akan diisi dengan data baru, yaitu :

INSERT INTO na ma_tabel (ko lo m1, kolo m2, ...) VA LUES (n ila i1, 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 dala m tabel. Sintaks :

UPDATE na ma_tabel

SET na ma_ko lo m = nila i_baru WHERE na ma_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'

3. Pernyataan DEL ETE

Pernyataan DELETE d igunakan untuk menghapus baris pada tabel. Sintaks :

DELETE FROM na ma_tabel WHERE na ma_kolo m = nilai Contoh :

Untuk menghapus baris pada tabel Mahasiswa yang nilai NPMnya adalah 01013, anda bisa me mberikan pernyataan seperti berikut :

Delete From Mahasiswa Where NPM =’01013’

Dala m perintah DELETE jika kita ingin menghapus semua data pada tabel tanpa menghapus tabel maka Where tidak perlu d isebutkan.

DELETE FROM na ma_tabel Atau

DELETE * FROM na ma_tabel

4. Pernyataan S ELECT

Secara u mu m perintah SELECT hanya difungsikan untuk mena mpilkan data yang ada di dala m suatu tabel. Tetapi dala m pengembangannya, perintah ini a kan men jadi sebuah perintah yang sangat penting dan berpengaruh hingga saat pemrogra man di stored procedures dan triggers. Sementara ini dala m basis data 1 yang kita bahas hanya pernyataan SELECT yang digunakan untuk me milih data dari tabel, yang mana hasilnya disimpan dala m tabel hasil yang disebut Result Set. Sintaks :

SELECT na ma_ko lo m FROM na ma_tabel

Untuk me milih beberapa kolo m gunakan pernyataan SELECT sebagai berikut : SELECT na ma_ko lo m1, na ma_ko lo m2, ...

FROM na ma_tabel Contoh :

Select NPM, Nama From Mahasiswa

à Merupakan pernyataan untuk mena mpilkan kolo m NPM dan Na ma yang terdapat pada tabel Mahasiswa.

NPM Nama --- --- 01001 Rudi 01002 Iwan 01005 Wati 01006 Jihan 01007 Nova 01009 Budi

Untuk me milih se mua ko lo m dari tabel, dapat menuliskan tanda asterisk ( * ) sesudah kata Select. Simbol * bera rti se mua kolo m, seperti berikut :

SELECT * FROM na ma_tabel Contoh : Select * From Mahasiswa 4.1 Distinct

Untuk me milih hanya nila i yang berbeda, gunakan pernyataan SELECT DISTINCT.

Sintaks :

SELECT DISTINCT na ma_ kolo m FROM na ma_tabel

4.2 Kl ausa WHER E

Klausa WHERE d igunakan untuk menentukan kriteria sele ksi. Untuk me milih data suatu tabel dengan kriteria tertentu, klausa WHERE dapat dita mbahkan pada pernyataan SELECT.

Sintaks :

SELECT na ma_ko lo m FROM na ma_tabel

WHERE ko lo m operator nila i

Dengan klausa WHERE, operator berikut dapat digunakan :

Operator Keterangan

= Sa ma dengan

<> Tidak sa ma dengan > Lebih besar dari < Lebih kec il dari

>= Lebih besar atau sama dengan <= Lebih kec il atau sama dengan BETW EEN Antara dua nilai

LIKE Mencari suatu pola 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.

4.3 Kondisi LIKE

Kondisi LIKE digunakan untuk menentukan pencarian berdasarkan pola tertentu pada suatu kolom.

Sintaks :

SELECT na ma_ko lo m FROM na ma_tabel

Tanda ” % ” dapat digunakan untuk menentukan Wildcard (sembarang huruf), ba ik sebelum maupun sesudah pola. Pernyataan SQL berikut a kan menghasilkan na ma mahasiswa yang dimula i dengan huruf A :

Select *

From Mahasiswa

Where Nama Depan LIKE ‘A%’

Pernyataan SQL berikut menghasilkan na ma mahasiswa yang diakhiri huruf a : Select *

From Mahasiswa

Where Nama Depan LIKE ‘%a’

Pernyataan SQL berikut menghasilkan nama mahasiswa yang mengandung pola “di”:

Select *

From Mahasiswa

Where Nama Depan LIKE ‘%di%’ 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

MODUL VI

DML (DATA MANIPULATION LANGUAGE)

Dasar Te ori

Perintah SELECT ada lah perintah untuk mena mpilkan data yang ada di dala m suatu tabel, yang mana dala m pengembangannya perintah ini akan menjadi sebuah perintah yang sangat penting dan berpengaruh hingga saat pemrogra man di stored procedures dan triggers. Selain perintah-perintah SELECT yang dibahas dala m modul V masih ada banyak perintah-perintah SELECT la in, antara la in perintah ALIAS, mena mpilkan 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 me mberikan na ma ALIAS yaitu dapat digunakan untuk mengganti nama_ko lo m dan na ma_tabel.

1.1 Me mberikan nama lain pada kolom

Sintaks untuk alias nama kolo m :

SELECT na ma kolo mla ma A S na mako lo mbaru FROM na matabel;

Atau

SELECT na ma_ko lo m AS na ma_alias_kolom FROM na ma_tabel

Tujuan :

v Prakt ikan dapat memaha mi dan me man ipulasi data dalam database dengan lebih luas lagi.

Tug as Pendahuluan

v Sebutkan dan jelaskan maca m-maca m klausa maupun operator yang terdapat dalam perintah SELECT selain yang sudah disebutkan di modul sebelu mnya (modul V)!

Jika kita ingin me mbuat nama alias untuk kolo m Na ma Depan menjad i ND dan Na ma Bela kang menjad i NB, gunakan pernyataan SQL berikut :

SELECT Na ma Depan AS ND, Na ma Be la kang AS NB FROM Mahasiswa

1.2 Menggunakan alias untuk nama tabel

Sintaks untuk alias nama tabel :

SELECT n ma lias.jenis, n ma lias.harga FROM na matabel n ma lias;

Atau

SELECT na ma_ko lo m FROM na ma_tabel AS nama_a lias_tabel

Jika kita ingin me mbuat nama alias untuk Tabel Mahasiswa menjadi M HS, gunakan pernyataan SQL berikut :

SELECT *

FROM Mahasiswa AS MHS

2. Menampilkan data le bih dari dua tabel

Perintah Se lect juga dapat dila kukan untuk beberapa tabel sekaligus dengan syarat bahwa tabel-tabel yang akan ditampilkan semua me mpunyai relasi baik secara implisit maupun eksplisit.

Salah satu kunci utama dala m mela kukan perintah Select untuk beberapa tabel sekaligus adalah dengan melaku kan kondisi relasi antara tabel-tabel yang akan ditamp ilkan untuka fie ld yang saling berelasi. Se la in itu, juga perlu diperhatikan tentang tabel yang akan menjadi acuan pertama da la m penamp ilan data yang dimaksud. Sebagai contoh adalah jika kita ingin mena mpilkan data mahasiswa yang mengamb il jurusan, ma ka tabel acuannya adalah tabel mahasiswa.

Sintaks : SELECT *

FROM na matabel1, na matabel2, na matabel-n;

Misalkan dala m tabel Mahasiswa field -fieldnya terdiri dari NRP, Na ma Depan, Na ma Bela kang, Te mpat Lahir, TanggalLahir, Ala mat, dan KodeJurusan. Sedangkan di tabel Jurusan fie ld-fie ldnya adalah KodeJurusan dan Na maJurusan. Berikut ini perintah untuk mena mpilkan semua data pada tabel Mahasiswa dan Jurusan,

SELECT *

FROM Mahasiswa, Jurusan

Maka tabel yang dihasilkan dari perintah SQL diatas adalah semua fie ld dari tabel Mahasiswa dan tabel Jurusan akan ditampilkan, yaitu NRP, Na ma Depan,

Na ma Bela kang, Te mpat Lahir, TanggalLahir, Ala mat, Mahasiswa.KodeJurusan, Jurusan.KodeJurusan, dan NamaJurusan.

3. Kl ausa Or der B y

Klausa ORDER BY d igunakan untuk mengurutkan data. Jika kita ingin mena mp ilkan nama mahasiswa berdasarkan urutan abjad, pernyataan SQL-nya adalah :

SELECT * FROM Mahasiswa ORDER BY Na ma Depan

Jika kita ingin mena mp ilkan na ma mahasiswa dan kotanya berdasarkan urutan abjad, ma ka pernyataan SQL-nya adalah :

SELECT * FROM Mahasiswa

ORDER BY Na ma Depan, Kota

Jika kita ingin mena mpilkan na ma mahasiswa dengan urutan abjad terbalik, maka pernyataan SQL-nya adalah :

SELECT * FROM Mahasiswa

ORDER BY Na ma Depan DESC

Jika kita ingin mena mpilkan na ma mahasiswa berdasarkan urutan abjad terbalik dan nama kota berdasarkan urutan abjad, ma ka pernyataan SQL-nya adalah :

SELECT *

FROM Mahasiswa

ORDER BY Na ma Depan DESC, Kota ASC

4. Operator AND dan OR

AND dan OR menggabungkan dua atau lebih kondisi pada klausa WHERE.

· Operator AND mena mp ilkan data jika semua kondisi yang diminta bernila i benar.

· Operator OR mena mpilkan data jika ada kondisi yang benar.

Pernyataan SQL untuk mena mpilkan mahasiswa dengan nama depan Ita dan nama kota Yogyakarta adalah:

SELECT * FROM Mahasiswa

WHERE Na maDepan = ’Ita ’ AND Kota = ’Yogyakarta’

Pernyataan SQL untuk mena mpilkan mahasiswa dengan nama depan Ita atau kota Yogyaka rta adalah :

FROM Mahasiswa

WHERE Na maDepan = ’Ita ’ OR Kota = ’Yogyakarta’ Operator AND dan OR dapat digunakan secara bersamaan, yaitu :

SELECT * FROM Mahasiswa

WHERE (Na ma Depan = ‘Ita’ OR Kota = ‘Yogyakarta’) AND (Ala mat = ‘Jl. Jend. Sudirman 3’)

5. Kl ausa GROUP B Y dan HAVING

5.1 GROUP B Y

Hasil dari Select juga dapat dikelo mpokkan. Hal ini dapat dilakukan dengan mena mbahkan klausa GROUP BY.

Sintaks :

SELECT na ma_ko lo m, COUNT (na ma_ kolo m) FROM na ma_tabel

GROUP BY na ma_ kolo m

Jika kita ingin mena mpilkan na ma mahasiswa yang lahir di satu kota, gunakan pernyataan berikut :

SELECT Te mpat_ Lahir, COUNT (Te mpat_ Lahir) as Ju mlah FROM Mahasiswa

GROUP BY Te mpat_Lahir

5.2 HAVING

Klausa HA VING d isediakan untuk mendukung klausa GROUP BY. Kegunaannya adalah untuk menentukan kondisi bagi GROUP BY. Ke lo mpok yang me menuhi kondisi HA VING saja yang akan dihasilkan.

Sintaks :

SELECT na ma_ko lo m, COUNT (na ma_ kolo m) FROM na ma_tabel

GROUP BY na ma_ kolo m

HA VING COUNT (na ma_kolo m) kondisi nilai

Misalnya, pernyataan untuk mencari kota yang menjad i te mpat lahir oleh lebih dari satu mahasiswa adalah:

SELECT Te mpat_ Lahir, COUNT (Te mpat_ Lahir) AS Ju mlah FROM MAHASISWA

GROUP BY Te mpat_Lahir

HA VING COUNT (Te mpat_Lah ir) > 1

Fungsi aggregate me rupakan fungsi-fungsi yang digunakan untuk me la kukan perhitungan statistikal dala m tabel. Secara u mu m, hanya field yang bertipe nume rik (int, money dan sejenisnya) yang bisa dikenakan fungsi ini. SQL menyedia kan sejumlah fungsi yang dapat digunakan pada SELECT.

Fungsi Keterangan

AVG Menghitung rata-rata COUNT Menghitung cacah data MAX Mempero leh nilai terbesar MIN Mempero leh nilai terkec il SUM Mempero leh ju mlahan data

6.1 COUNT

Perintah yang digunakan untuk menghitung jumlah baris suatu kolom pada tabel. Pernyataan SQL untuk menghitung jumlah baris kolom Na maDepan pada tabel Mahasiswa adalah :

SELECT COUNT (Na maDepan) AS Ju mlahMahasiswa FROM Mahasiswa

6.2 SUM

Perintah yang digunakan untuk menghitung jumlah nila i 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 nila i 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 mena mp ilkan nila i terkec il dari suatu kolom pada tabel. Contoh : perintah untuk mena mpilkan nilai terkecil dari kolo m SKS pada tabel Matakuliah :

SELECT M IN(SKS) AS Ju mlahMin imu m FROM Mataku liah

Perintah yang digunakan untuk mena mpilkan nila i terbesar dari suatu kolo m pada tabel. Contoh : perintah untuk mena mpilkan 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 nila i pasti yang akan dia mbil untuk setidaknya satu kolom.

Sintaks :

SELECT na ma_ko lo m FROM na ma_tabel WHERE na ma_kolo m IN (nila i1, nila i2, ...)

Untuk mena mpilkan mahasiswa dengan nama depan Hasan atau Adi, gunakan pernyataan SQL berikut :

SELECT * FROM Mahasiswa WHERE Na maDepan IN (’Hasan’, ’Adi’)

8. Operator B ETWEEN … AND

Operator BETW EEN … AND me milih data antara dua nila i. Nilai dapat berupa angka, teks, atau tanggal.

Sintaks :

SELECT na ma_ko lo m FROM na ma_tabel WHERE na ma_kolo m BETW EEN nila i1 AND nila i2

Untuk mena mpilkan Mahasiswa yang namanya diantara (dan termasuk) Adi dan Ita, gunakan perintah SQL berikut :

SELECT * FROM Mahasiswa WHERE Na maDepan BETW EEN ’Ad i’ A ND ’Ita’

Operator BETW EEN … AND diperlaku kan secara berbeda pada DBMS berbeda. Pada satu DBMS, data Mahasiswa yang dimunculkan adalah yang berada diantara Adi dan Ita, tetapi Adi dan Ita tidak dimunculkan. Pada DBMS lain, Mahasiswa yang dimunculkan termasuk Adi dan Ita. Ke mud ian, pada DBM S la innya, Adi dimunculkan, tetapi Ita tidak.

Untuk mena mpilkan Mahasiswa di luar jangkauan contoh, gunakan operator NOT seperti berikut :

SELECT * FROM Mahasiswa WHERE Na maDepan

NOT BETW EEN ‘Adi’ AND ‘Ita’ Tug as :

Dari topik pembuatan aplikasi basis data yang telah anda buat, buatlah masing-masing perintah DM L berikut :

1. Buatlah perintah SQL untuk mena mp 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).

MODUL VII

Dalam dokumen BASIS DATA 1 MODUL PRAKTIKUM (Halaman 23-39)

Dokumen terkait