Oracle Database Certified Associate (OCA) 1 minute read

Perintah delete data, biasanya kita gunakan untuk menghapus data dari table tertentu dengan / tanpa menggukanan where klausa.

Format penulisan delete statement yaitu seperti berikut:

DELETE FROM table_name 
WHERE column_key = <valueKey>

Contoh penggunaanya adalah sebagai berikut, contohnya saya mau menghapus data yang telah saya insert tadi, yaitu dengan region_id = 5, maka berikut querynya:

berikut hasilnya:

-- data awal
SQL> select * from regions;

 REGION_ID REGION_NAME
---------- -------------------------
        15 Asia Tengara
         1 Europe
         2 Americas
         3 Asia
         4 Middle East and Africa

-- execute delete by region_id
SQL> delete from regions
where region_id = 15;  2

1 row deleted.

-- data setelah di hapus
SQL> select * from regions;

 REGION_ID REGION_NAME
---------- -------------------------
         1 Europe
         2 Americas
         3 Asia
         4 Middle East and Africa

Note

  1. jika kita tidak menggunakan where klausa, maka semua data akan terhapus!!
  2. Jika kita menghapus data tapi masih ada relasi ke tabel lain (foreign key constrant) biasanya akan muncul error seperti berikut:
     ERROR at line 1: ORA-02292: integrity constraint (HR.COUNTR_REG_FK) violated - child record
    found