MI2143 – Dasar SQL Semester Ganjil / Tahun Ajaran …...SQL Statement yang digunakan untuk...
Transcript of MI2143 – Dasar SQL Semester Ganjil / Tahun Ajaran …...SQL Statement yang digunakan untuk...
Data ManipulationLanguage (DML)
MI2143 – Dasar SQLSemester Ganjil / Tahun Ajaran 2014-2015
Hanya dipergunakan untuk kepentingan pengajaran di Lingkungan Telkom University
Disajikan Oleh:
Dedy Rahman Wijaya, S.T., M.T., OCA – [email protected]
Disusun Oleh:
Wardani Muhamad S.T., M.T. – wdm@politekniktelkom,ac.id
Data Manipulation Language (DML)
DML statement digunakan untuk: Menambahkan record (baris data) baru ke
table
Memodifikasi record (baris data) yangtersimpan pada table
Menghapus record (baris data) yangtersimpan pada table
Menyajikan (seleksi) informasi yangdisimpan pada table
SELECTINSERTUPDATE Data Manipulation Language (DML)DELETEMERGE
CREATEALTERDROP Data Definition Language (DDL)RENAMETRUNCATECOMMENT
GRANT Data Control Language (DCL)REVOKE
COMMITROLLBACK Transaction ControlSAVEPOINT
Menambahkan Record Baru
DEPARTMENTSRecord Baru
Menambahkan record barukedalam table
“DEPARTMENTS”
Sintaks Statement INSERT
SQL Statement yang digunakan untuk menambahkan record ke dalamtable:
Mengisikan nilai pada tiap column
Urutan nilai yang diisikan secara default mengikuti urutan nama column padatable
Cara lain, tuliskan daftar column pada klausa INSERT
Gunakan petik tunggal (‘ ‘) untuk mengisikan karakter dan tanggal Contoh:
Penggunaan sintaks diatas hanya akan menambahkan sebuah record kedalam table.
INSERT INTO table [(column [, column...])]VALUES (value [, value...]);
INSERT INTO departments(department_id,department_name, manager_id, location_id)
VALUES (70, 'Public Relations', 100, 1700);
Menambahkan NULL Values
Secara Implicit: column yang memiliki NULL value tidak disertakan kedalamdaftar column.
Secara eksplisit: mengisikan NULL keyword pada klausa VALUES.
INSERT INTO departments (department_id,department_name)
VALUES (30, 'Purchasing');
INSERT INTO departmentsVALUES (100, 'Finance', NULL, NULL);
Menambahkan Special Values
Fungsi SYSDATE menyimpan informasi tanggal dan waktu saat ini
INSERT INTO employees (employee_id,first_name, last_name,email, phone_number,hire_date, job_id, salary,commission_pct, manager_id,department_id)
VALUES (113,'Louis', 'Popp','LPOPP', '515.124.4567',SYSDATE, 'AC_ACCOUNT', 6900,NULL, 205, 110);
Mengisikan Nilai Tanggal dan Waktu
Menambahkan record pegawai baru.
Periksa hasil penambahan record:
INSERT INTO employeesVALUES (114,
'Den', 'Raphealy','DRAPHEAL', '515.127.4561',TO_DATE('FEB 3, 1999', 'MON DD, YYYY'),'SA_REP', 11000, 0.2, 100, 60);
SELECT * FROM employees;
Variable Subtitusi
Gunakan karakter& pada SQL statement untuk menerima nilai dari user.
& merupakan variable yang digunakan untuk meyimpan nilai yangdiisikan.
INSERT INTO departments
(department_id, department_name, location_id)
VALUES (&department_id, '&department_name',&location);
Mengubah Record pada Table
EMPLOYEES
Perubahan record pada table EMPLOYEES :
Sintaks Statement UPDATE
Untuk memodifikasi nilai yang sudah tersimpan di dalam table, digunakanstatement UPDATE:
Pengubahan (update) dapat melibatkan lebih dari satu record.
UPDATE tableSET column = value [, column = value, ...][WHERE condition];
Pengubahan Nilai Column
Klausa WHERE dapat digunakan untuk menentukan lebih spesifik recordyang akan diubah:
Jika tanpa menggunakan klausa WHERE, semua rocord yang tersimpanpada table akan diubah nilainya:
Gunakan SET column_name= NULL untuk mengubah nilai NULL padacolumn.
UPDATE employeesSET department_id = 50WHERE employee_id = 113;
UPDATE copy_empSET department_id = 110;
Menghapus Record
Penghapusan pada table DEPARTMENTS:
DEPARTMENTS
Statement DELETE
Statement DELETE digunakan untuk menghapus record pada table
Klausa WHERE digunakan untuk menghapus record lebih spesifik
Jika tidak menggunakan klausa WHERE, maka semua record pada tableakan terhapus
DELETE [FROM] table[WHERE condition];
DELETE FROM departmentsWHERE department_name = ‘Finance';
DELETE FROM copy_emp;
Statement Truncate
Statement Truncate digunakan untuk menghapus semua record dari table table menjadi kosong seperti sedia kala pada saat diciptakan
Merupakan kelompok data definition language (DDL)
Syntax:
Example:
TRUNCATE TABLE table_name;
TRUNCATE TABLE copy_emp;
Commit dan Rollback
Commit dan Rollback merupakan Transaction Control yang digunakanuntuk mengakhiri transaksi pada basisdata
Kegunaan Commit dan Rollback: Memastikan data consistency
Preview data yang diubah sebelum pengubahan secara permanen
State DCL
SAVEPOINT B
SAVEPOINT A
DELETE
INSERT
UPDATE
INSERT
COMMITTime
Transaction
ROLLBACKto SAVEPOINT B
ROLLBACKto SAVEPOINT A
ROLLBACK
Ringkasan
No SQL Statement Kegunaan1 INSERT Menambahkan record (baris data) baru ke dalam table2 UPDATE Mengubah nilai yang tersimpan pada table3 DELETE Menghapus record (baris data) dari table4 TRUNCATE Menghapus semua record pada table5 COMMIT Menjadikan semua perubahan sementara menjadi
permanen6 SAVEPOINT Penanda savepoint yang akan digunakan pada operasi
ROLLBACK7 ROLLBACK Membatalkan semua perubahan
Referensi
Oracle Database 10g. SQL Fundamental 1 – Student Guide Volume 1.California: Oracle Publisher 2004.
Oracle Database 10g. SQL Reference 10g Release 2. California: OraclePublisher 2005.