• Tidak ada hasil yang ditemukan

MODUL 4. Query SELECT dan DML (INSERT, UPDATE, DELETE) PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

N/A
N/A
Protected

Academic year: 2021

Membagikan "MODUL 4. Query SELECT dan DML (INSERT, UPDATE, DELETE) PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE"

Copied!
13
0
0

Teks penuh

(1)

MODUL 4

Query SELECT dan DML (INSERT,

UPDATE, DELETE)

PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

(2)

BAGIAN 1 QUERY SELECT Tujuan Pembelajaran :

• Mengetahui kemampuan dari SQL SELECT Statement • Dapat membuat perintah SQL dengan SELECT Statement

• Dapat menggunakan iSQL*PLUS sebagai antarmuka pengolahan query 4.1 Pengenalan iSQL*PLUS

iSQL*PLUS adalah SQL*PLUS berbasis web yang disediakan oleh Oracle, didalamnya kita bisa menampilkan struktur tabel, mengedit SQL Statement, menjalankan perintah SQL, menyimpan SQL Statement ke dalam file script, dan memanggil file script yang sudah disimpan.

4.2 Logging in iSQL*PLUS

Untuk memanggil iSQL*PLUS pada ORACLE 10g, ketahui alamat pemanggilan ISQL*PLUS dengan cara membuka file : “ C:\oracle\product\10.2.0\db_1\install\readme.txt “

Kemudian perhatikan alamat yang berada di bawah : “ The iSQL*Plus URL is : “. Ketik ulang alamat tersebut pada WEB BROWSER sehingga muncul halama awal iSQL*Plus.

(3)

Apabila ORACLE 10g diinstall lengkap dengan SAMPLE SCHEMA, isikan dengan Username : scott, Password : password_yang_ditentukan_oleh_praktikum, Connect Identifier : orcl

4.3 Menampilkan Struktur Tabel

Untuk menampilkan struktur table digunakan perintah DESCRIBE. Formatnya : DESC namatabel atau DESCRIBE namatabel

Percobaan 1 : Lakukan kembali langkah-langkah pemanggilan iSQL*Plus di atas :

Percobaan 2 : Tampilkan struktur tabel “emp” dengan menggunakan iQSL*Plus :

Name Null? Type

EMPNO NOT NULL NUMBER(4) ENAME VARCHAR2(10) JOB VARCHAR2(9) MGR NUMBER(4) HIREDATE DATE SAL NUMBER(7,2) COMM NUMBER(7,2) DEPTNO NUMBER(2)

1

2

(4)

4.4 Berinteraksi dengan File Script

Apa yang ditulis dalam editing window pada iSQL*PLUS dapat disimpan sebagai file script. Tombol untuk melakukan penyimpanan suatu query kedalam file .sql pada iSQL*PLUS adalah Tombol “Save Script” – Ditunjukkan dengan angka 1 pada gambar halaman Workspace iSQL*PLUS. Sedangkan tombol untuk melakukan pemanggilan isi file .sql adalah tombol “Load Script” – Ditunjukkan dengan angka 2 pada gambar halaman workspace iSQL*PLUS.

4.5 Dasar Statement SELECT

Sintak (cara penulisan) dari statement SELECT :

SELECT [DISTINCT] {*, column [alias], … } FROM table; SELECT digunakan untuk memilih kolom yang ingin ditampilkan.

FROM digunakan untuk memilih table asal. Aturan Penulisan Statement SQL

• SQL Statement tidak case sensitive artinya tidak dibedakan antara penulisan huruf kecil dan huruf besar.

• SQL Statement dapat terdiri dari lebih dari satu baris.

• Keyword tidak bisa disingkat atau dipisah di baris yang berbeda. • Klausa biasanya ditempatkan pada baris yang berbeda.

• Inden digunakan untuk memudahkan pembacaan 4.6 Memilih semua Kolom

Akan terdapat beberapa baris data yang kolom “COMM” tidak berisi data apapun. Hal tersebut dikatakan NULL. Nilai NULL (kosong) pada suatu kolom bisa berarti ada data yang tidak diisi, atau tidak diketahui nilainya. Nilai NULL tidak sama dengan NOL (zero). Nilai NULL juga tidak sama dengan spasi kosong.

Percobaan 4 : Lakukan query untuk menampilkan seluruh data pada tabel “emp”; EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO

7369 SMITH CLERK 7902 17-DEC-80 800 20 7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30 7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30 7566 JONES MANAGER 7839 02-APR-81 2975 20

Percobaan 3 : Simpan perintah untuk menampilkan struktur tabel pada percobaan 2 dengan filename NPM anda dan letakkan file tersebut pada DESKTOP . Bersihkan Workspace iSQL*PLUS. Kemudian lakukan pemanggilan file tersebut sehingga perintah untuk menampilkan struktur tabel muncul dan cobalah untuk mengeksekusi perintah tersebut:

(5)

4.7 Memilih Kolom yang Spesifik

4.8 Ekspresi Aritmatik

Suatu ekspresi yang melibatkan tipe data bilangan (NUMBER) dan tanggal (DATE) menggunakan ekspresi artimatika.

Contoh : SELECT last_name, salary, salary+300 FROM employee

4.9 Operator Presedence

Perkalian dan pembagian memiliki prioritas (precedence) lebih tinggi daripada penambahan dan pengurangan.

Contoh : SELECT last_name, salary, 12*salary+300 FROM employee

Percobaan 7 : Lakukan query untuk menampilkan data kolom “ENAME”, “HIREDATE” dan “SAL” yang dikalikan 50 dan ditambahkan dengan 250 pada tabel “emp”;

ENAME HIREDATE 50*SAL+250

SMITH 17-DEC-80 40250 ALLEN 20-FEB-81 80250 WARD 22-FEB-81 62750 JONES 02-APR-81 149000

Percobaan 6 : Lakukan query untuk menampilkan data kolom “ENAME”, “HIREDATE” dan “SAL” yang ditambahkan dengan 250 pada tabel “emp”;

ENAME HIREDATE SAL+250

SMITH 17-DEC-80 1050 ALLEN 20-FEB-81 1850 WARD 22-FEB-81 1500 JONES 02-APR-81 3225

Percobaan 5 : Lakukan query untuk menampilkan data kolom “ENAME” dan “HIREDATE” pada tabel “emp”;

ENAME HIREDATE

SMITH 17-DEC-80 ALLEN 20-FEB-81 WARD 22-FEB-81 JONES 02-APR-81

(6)

4.10 Penggunaan Tanda Kurung

Penggunaan tanda kurung memiliki prioritas paling tinggi dibanding presedensi operator yang lain. Contoh : SELECT last_name, salary, 12*(salary+300) FROM employee

4.11 Menggunakan Kolom Alias

Judul (secara default) pada tiap kolom yang ditampilkan (heading) selalu sama dengan nama kolomnya dan ditulis dengan hutuf besar. Penggantian judul kolom, sehingga tidak sama dengan judul default disebut kolom alias.

Contoh : SELECT last_name AS “Name” FROM employee; Atau

SELECT last name “Name” FROM employee;

4.12 Operator Penyambungan

Nilai dari dua kolom atau lebih dapat digabungkan dengan menggunakan operator penyambungan ( || ).

Contoh : SELECT last_name || job_id AS “Employees” FROM employees;

Percobaan 9 : Lakukan query untuk menampilkan data kolom “ENAME” dengan nama kolom aliasnya “Nama Pegawai” dan “HIREDATE” dengan nama kolom aliasnya “Tanggal Diterima” pada tabel “emp”;

Nama Pegawai Tanggal Diterima

SMITH 17-DEC-80 ALLEN 20-FEB-81 WARD 22-FEB-81 JONES 02-APR-81

Percobaan 8 : Lakukan query untuk menampilkan data kolom “ENAME”, “HIREDATE” dan “SAL” yang isinya ditambahkan dengan 250 kemudian baru dikalikan 50 pada tabel “emp”;

ENAME HIREDATE 50*(SAL+250)

SMITH 17-DEC-80 52500 ALLEN 20-FEB-81 92500 WARD 22-FEB-81 75000 JONES 02-APR-81 161250

(7)

4.13 Literal Character Strings

Literal dapat berupa karakter, ekspresi atau bilangan yang terdapat pada klausa SELECT. Literal berupa tanggal (DATE) dan karakter harus diapit dengan tanda petik tunggal.

Contoh : SELECT last_name || ‘working as’ || job_id AS “Employee Details” FROM employee;

4.14 Baris yang Duplikat dan cara menghindari munculnya baris duplikat

Perintah query akan memberikan hasil termasuk suatu nilai yang bisa muncul lebih dari satu kali. Untuk menghindari hal tersebut maka gunakan DISTINC setelah kata SELECT.

Contoh : SELECT DISTINCT department_id FROM employee;

Percobaan 12 : Lakukan query untuk menampilkan data kolom “JOB” tanpa ada yang boleh berulang pada tabel “emp”;

JOB

CLERK SALESMAN PRESIDENT MANAGER

Percobaan 11 : Lakukan query untuk menampilkan gabungan data kolom “ENAME” dan “JOB” dengan kalimat penyambung “Bekerja Sebagai” nama kolom aliasnya “Nama dan Posisi” pada tabel “emp”;

Nama dan Posisi

SMITH Bekerja Sebagai CLERK ALLEN Bekerja Sebagai SALESMAN WARD Bekerja Sebagai SALESMAN JONES Bekerja Sebagai MANAGER

Percobaan 10 : Lakukan query untuk menampilkan gabungan data kolom “ENAME” dan “JOB” dengan nama kolom aliasnya “Nama Samaran” pada tabel “emp”;

Nama Samaran

SMITHCLERK ALLENSALESMAN WARDSALESMAN JONESMANAGER

(8)

BAGIAN 2 DML (INSERT, UPDATE, DELETE) Tujuan Pembelajaran :

• Memahami Statement DML (Data Manipulation Language) • Menyisipkan baris ke dalam table

• Merubah baris dalam table • Menghapus baris dari table

4.15 Data Manipulation Language

Data Manipulation Language (DML) adalah suatu statement yang dijalankan pada saat kita memerlukan :

• penambahan baris baru pada table • memodifikasi baris yang ada pada table • menghapus baris yang ada pada table

DML Statement identik dengan operasi INSERT, MODIFY dan DELETE. Istilah Transaksi mengandung pengertian kumpulan Statement DML yang membentuk suatu fungsi tertentu.

4.16 Menambahkan Baris Baru ke dalam Tabel (INSERT)

Menambahkan baris baru ke dalam table menggunakan perintah INSERT.

INSERT INTO table [(column [, column …] ) ] VALUES (value [, value…] );

4.17 INSERT dengan nilai NULL

Kolom yang tidak disebutkan dalam perintah INSERT INTO secara otomatis akan diisi dengan nilai NULL.

Percobaan 14 : Lakukan proses INSERT seperti pada contoh berikut, sehingga kolom loc akan berisi nilai NULL

(9)

4.18 INSERT menggunakan Fungsi dan Nilai terformat

Suatu fungsi bisa digunakan sebagai suatu nilai dalam perintah INSERT.

Nilai yang dimasukkan ke dalam perintah INSERT bisa menggunakan nilai terformat.

4.19 INSERT dengan variable substitusi

Pada perintah INSERT bisa dicantumkan variable substitusi.

Percobaan 18 : Lakukan proses INSERT yang mencantumkan variable substitusi dari suatu nilai kolom pada baris baru yang akan dimasukkan ke dalam table.

Percobaan 17 :Lakukan proses INSERT dengan menggunakan nilai data tanggal yang diformat. Percobaan 16: Lakukan proses INSERT yang menyertakan fungsi sysdate ke dalam table EMP Percobaan 15: Lakukan proses INSERT, bila tidak disebutkan kolom apa saja yang harus diisi, maka nilai pada VALUES harus mencantumkan semua kolom yang ada pada table sesuai dengan urutannya.

(10)

4.20 Pembuatan Script dengan Kustomisasi Prompt

Untuk melakukan kustomisasi, dapat digunakan perintah ACCEPT dan PROMPT.

4.21 Mengkopi Baris dari Tabel lain

Perintah INSERT juga bisa digunakan untuk mengkopi baris data yang berasal dari table yang lain.

4.22 Perubahan Data dalam Tabel (UPDATE)

Untuk memodifikasi baris data yang ada pada table digunakan perintah UPDATE. Sintak dari perintah UPDATE :

UPDATE table SET column = value [, column = value, …] [WHERE condition];

Semua baris pada table akan dimodifikasi jika klausa WHERE tidak disertakan.

Percobaan 21 : Ubah nomer department menjadi = 20, untuk pegawai yang memiliki nomer department = 7782;

Percobaan 20 : Berikut ini akan ditambahkan baris baru ke dalam table manager yang berasal dari table pegawai yang pekerjaannya = ‘MANAGER’

Percobaan 19 : Dengan penambahan kustomisasi prompt. Buat file .sql dengan nama file NPM anda dan kemudian save di drive C. Isi dari file tersebut adalah sebagai berikut

ACCEPT department_id PROMPT 'Silahkan masukkan nomer department : ' ACCEPT department_name PROMPT 'Silahkan masukkan nama department : ' ACCEPT location PROMPT 'Silahkan masukkan lokasi department : '

INSERT INTO dept(deptno,dname,loc) VALUES (&department_id,'&department_name','&location'); Kemudian jalankan dengan mengetikkan sebgai berikut :

(11)

Hasilnya, jika diperiksa :

4.23 UPDATE dengan multiple column subquery

Perintah UPDATE bisa menggunakan multiple column subquery.

4.24 UPDATE berdasarkan table yang lain

UPDATE berdasarkan table yang lain artinya perubahan pada sebuah table dimana kondisi perubahannya ditentukan berdasarkan nilai yang terdapat pada table yang lain.

Percobaan 23 : Ubah data nomer department yang dimiliki oleh pegawai dengan pekerjaan yang sama dengan pegawai bernomor ‘7788’ , data nomer department tersebut harus diubah menjadi data yang sama dengan nomer department yang dimiliki oleh pegawai bernomor ‘7788’;

Percobaan 22 : Ubah nilai dari kolom pekerjaan dan nomer department dari pegawai dengan nomer pegawai ‘7698’ sehingga nilainya sama dengan jenis pekerjaan dan nomer department yang dimiliki oleh pegawai bernomer ‘7499’

(12)

4.25 Kesalahan pada UPDATE

Salah satu kesalahan pada perintah UPDATE, misal jika kita berusaha untuk merubah data sedangkan data tersebut terikat pada integrity constraint (merupakan suatu key).

4.26 Menghapus baris dari table (DELETE)

Baris data yang ada pada table dapat dihapus dengan menggunakan perintah DELETE.

Jika klausa WHERE ditiadakan, maka semua baris dalam table akan dihapus.

4.27 DELETE berdasarkan table yang lain

Percobaan 27 : Menghapus semua baris yang ada pada table pegawai.

Percobaan 26 : Hapus data semua pegawai yang tanggal mulai bekerjanya setelah tanggal 1 Januari 1997

Percobaan 25 : Menghapus data pegawai yang mempunyai nama department = ‘DEVELOPMENT’

Percobaan 24 : Ubah data pegawai dengan nomer department 10 menjadi data dengan nomer department 55.

Terjadi kesalahan dikarenakan nomer department ‘55’ tidak terdapat dalam table pegawai. Query berikut ini baru bisa dijalankan tanpa ada kesalahan :

(13)

Subquery dapat digunakan dalam statement DELETE untuk menghapus baris pada suatu table berdasarkan data yang ada di table yang lain.

4.28 Kesalahan pada DELETE

Jika baris data yang dihapus pada table berkaitan dengan integrity constraint, maka akan terjadi kesalahan.

Percobaan 29 : Misal akan dihapus data pada table department yang memiliki nomer department ‘10’. Jika nomer department 10 ini mempunyai data yang berkaitan dengan data yang ada di table pegawai (ada pegawai yang bekerja di department 10), maka akan muncul pesan kesalahan, seperti pada query berikut :

Percobaan 28 : Menghapus data pada table pegawai, untuk pegawai yang bekerja pada department ‘SALES’

Referensi

Dokumen terkait

Kesimpulan dari artikel tentang metode pembelajaran Think Pair Share ini adalah; metode pembelajaran Think Pair Share merupakan tipe model pembelajaran kooperatif yaitu

Nilai-Nilai Tradisi Ruwatan Bumi Sebagai Sumber Pembelajaran Sejarah Untuk Meningkatkan Rasa Tanggung Jawab Siswa (Mixed Method Dengan Studi Etnografi Pada Masyarakat Adat Banceuy Dan

Aplikasi yang berada pada kuadran high potential dan strategi mampu memberikan manfaat kompetitif kepada perusahaan karena dapat memberikan manfaat kompetitif serta dapat

Sistem yang dibuat telah dapat memberi proteksi dalam penggunaan daya listrik dengan cara memutuskan aliran arus listrik, ketika arus melebihi atau sama dengan arus

Alat dalam melakukan pengelasan sangat banyak, tergantung dari kebutuhan, untuk apa di gunakan, dan dimana penggunaannya, hal ini harus di perhatikan karena, apabila salah dalam

a) Izin bersifat bebas adalah izin sebagai keputusan tata usaha negara yang penerbitannya tidak terikat pada aturan dan hukum tertulis serta organ yang berwenang

 Rincian Perubahan APBD menurut urusan pemerintahan daerah, organisasi, pendapatan, belanja dan pembiayaan pada Lampiran A.XV.  Penjabaran Perubahan APBD pada

Pada tahapan ini pengurus DPD Partai Golongan Karya Kota Tanjungpinang melakukan sebuah penjaringan melalui aturan yang ada mengenai siapa yang pantas dan berhak