DDL, DML
Pada PL/SQL terdiri dari 4 buah bagin utama 1. DDL (Data Definition Language) : bahasa yang mempunyai kemampuan untuk mendefinisikan data yag berhubungan dengan pembuatan dan penghapusan objek seperti contoh tabel, indeks, nama, dll. Yang termasuk dalam DDL ini yaitu CREATE, DROP, ALTER. 2. DML (Data Manipulation Language) : bahasa yang berhubungan dengan proses manipulasi data pada tabel, record. Yang termasuk dalam DML ini yaitu: INSERT, UPDATE, SELECT, DELETE. 3. DCL (Data Control Language) : bahasa yang mengatur hak akses apa saja yang diberikan kepada suatu user. Yang termasuk dalam DCL ini yaitu GRANT dan REVOKE. 4. TC (Transaction Control) : bahasa yang mengatur perubahan pada DML terhadap apa saja yang telah dilakukan.
DDL Dalam database SQL biasanya terdiri dari tabel data dan semua data di dalamnya. DDL ini menggambarkan desain basis data secara keseluruhan dan didefinisikan dengan bahasa khusus. Dengan bahasa tersebut kita bisa membuat tabel baru, membuat indeks, mengubah tabel, mengubah struktur tabel, atau menghapus dabel. Hasil dari kompilasi DDL biasanya merupakan kumpulan dari beberapa tabel yang disimpan dalam file khusus yang disebut Kamus Data. Yang termasuk dalam bahasa pada DDL yaitu: 1. CREATE 2. DROP 3. ALTER
CREATE Perintah CREATE berfungsi untuk membuat. Dalam PL/SQL perintah CREATE ini dapat membuat tabel baru, indeks, prosedur, fungsi, view, dll. Dalam pembahasan ini akan dibahas mengenai fungsi perintah CREATE untuk membuat table. Adapun penulisan perintah CREATE dituliskan sebagai berikut:
CREATE TABLE nilai ( nim number(2), nama varchar2(7), ipa number(2), mat number(2), bindo number(2), bingr number(2), rata_rata number(2) );
Pada tabel diatas menggunakan nama tabel 'nilai’ dengan 7 buah kolom dengan nama dan tipe data yang tidak sama. Untuk menampilkan hasil kompilasi dari pogram, maka dituliskan perintah SELECT *FROM nama_tabel
DROP Perintah DROP ini berfungsi untuk menghapus, bisa untuk menghapus tabel, kolom, view, fungsi, prosedur, dll. Dalam pembahasan ini dibahas mengenai fungsi DROP untuk menghapus tabel atau kolom. Adapun penulisan dari perintah DROP ini dituliskan sebagai berikut:
ALTER Perintah ALTER digunakan untuk merubah tabel, dalam hal ini adalah merubah variabel yang digunakan dalam tabel seperti merubah tipe data, merubah jumlah data, dan juga bisa untuk menambah kolom baru. Berikut dituliskan perintah ALTER:
1. Menambah Kolom Baru Perintah ALTER juga bisa digunakan untuk menambah beberapa kolom baru sekaligus dengan penulisan
Contoh
ALTER MODIFY Perintah ALTER juga berfungsi untuk memodifikasi dari kolom seperti contoh untuk merubah definisi dari tabel. Misal pada tabel nilai, pada kolom nama didefinisikan dengan varchar2(7). Penulisan perintah ALTER dituliskan sebagai berikut:
CONTOH AWAL AKHIR
Selain itu perintah ALTER dan DROP digunakan untuk menghapus kolom pada tabel dengan penulisan sebagai berikut: ALTER TABLE nama_tabel DROP COLUMN nama_kolom; Contoh ALTER TABLE nilai DROP COLUMN nim;
DML (Data Manipulation Language) Jika pada DDL adalah bahasa untuk mendefinisikan awal mengenai basis data (tabel, view, dll) maka DML merupakan bahasa yang digunakan untuk memanipulasi data dari basis data (dalam hal ini berupa tabel). Manipulasi data dapat berupa: 1. Penyisipan / penambahan data baru ke dalam tabel 2. Penghapusan data dari tabel 3. Pengubahan data dari tabel Adapun perintah yang termasuk dalam DML ini yaitu : 1. INSERT 2. UPDATE 3. SELECT 4. DELETE.
INSERT Perintah INSERT digunakan untuk menyisipkan / menambah data baru ke dalam tabel. Adapun perintah INSERT dituliskan seperti berikut: INSERT INTO nama_table (kolom1, kolom2,...) VALUES(nilai1, nilai2,...);
contoh insert into nilai (nim,nama,ipa,mat,bindo,bingr) values(1,'ani',9,8,8,7); insert into nilai (nim,nama,ipa,mat,bindo,bingr) values(2,'andi',7,8,9,8); insert into nilai (nim,nama,ipa,mat,bindo,bingr) values(3,'uni',3,4,9,8); insert into nilai (nim,nama,ipa,mat,bindo,bingr) values(4,'ina',8,5,4,7); insert into nilai (nim,nama,ipa,mat,bindo,bingr) values(5,'andri',7,10,9,8);
UPDATE Perintah UPDATE digunakan untuk merubah isi dari kolom (baris) yang diinginkan. Adapun penulisan perintah UPDATE dituliskan sebagai berikut: UPDATE nama_tabel SET kolom1 = nilai1, Kolom2 = nilai2, ... WHERE kondisi;
CONTOH Jika ingin mengupdate semua data maka, perintah WHERE tidak perlu digunakan. Perintah WHERE digunakan jika kita ingin meng-UPDATE data hanya pada kolom-kolom tertentu dengan kondisi tertentu sebagai filter nya. Dari contoh tabel di atas, kita akan mengubah nilai uni (NIM =3) menjadi 8, maka syntax nya menjadi. update nilai set ipa =8 where nim=3;
Perintah SELECT pada PL/SQL mempunyai fungsi untuk mengambil (retrieve) informasi dari database. Perintah ini juga mempunyai kemampuan seperti berikut: Ø Projection : Memilih kolomkolom dalam suatu tabel yang dihasilkan dari suatu query. Memilih beberapa atau banyak kolom yang dibutuhkan. Ø Selection : Memilih barisbaris dalam suatu tabel yang dihasilkan dari suatu query. Banyak kriteria yang dapat digunakan untuk membatasi barisbaris yang akan diambil. Ø Joining : Mengambil data bersama yang disimpan dalam tabel tabel yang berbeda dengan menentukan hubungan antara mereka. Joinjoin SQL dijelaskan lebih detail pada pembahasan selanjutnya.
Untuk mengambil data dari keseluruhan isi tabel, maka perintah SELECT ditulis menjadi SELECT *FROM nama_tabel;
Telah dicoba sebelumnya menampilkan isi dari tabel nilai dengan menggunakan perintah SELECT dimana akan tampil semua isi dari tabel nilai. Perintah ini juga bisa menampilkan hanya salah satu atau beberapa kolom yang akan ditampikan dengan penulisan : SELECT kolom1, kolom2,…,kolom n FROM nama_tabel; WHERE kondisi;
Menampilkan semua isi tabel dengan kondisi NIM<4 br=""> Menampilkan NIM,Nama,dan Nilai IPA dimana NIM<4 o
DELETE Perintah DELETE berguna untuk menghapus baris dari suatu tabel. Bisa diikuti dengan kondisi yang bersesuaian dengan data baris yang ingin dihapus. Penulisan perintah DELETE ditunjukkan sebagai berikut: DELETE FROM nama_tabel WHERE conditions;
Contoh akan dihapus data pada tabel dengan NIM = 1, maka : Terlihat dari tampilan diatas bahwa pada tabel nilai, dimana NIM = 1 dihapus dan langsung ditampilkan data dari NIM 2 dan seterusnya.
create table perc ( id varchar2(4), name varchar2(30), jabatan varchar2(14), gaji_pokok number(9), tunjangan number(9 ); insert into perc(id,name,jabatan,gaji_pokok,tunjangan) values(2345,'ARINI','CLERK',1000000,400000); insert into perc(id,name,jabatan,gaji_pokok,tunjangan) values(4567,'MUSLIM','WORKER',1500000,500000); insert into perc(id,name,jabatan,gaji_pokok,tunjangan) values(3546,'ANIVA','ITNET',2000000,800000); insert into perc(id,name,jabatan,gaji_pokok,tunjangan) values(6879,'MALIK','ITSPV',2500000,900000); insert into perc(id,name,jabatan,gaji_pokok,tunjangan) values(1970,'DAMAR','ITMAN',3000000,1000000);