Ringkasan :tutorial ini menunjukkan cara menggunakan SQLite DELETE
pernyataan untuk menghapus baris dari tabel.
Pengantar SQLite DELETE
pernyataan
Anda telah mempelajari cara menyisipkan baris baru ke dalam tabel dan memperbarui data tabel yang sudah ada. Terkadang, Anda perlu menghapus baris dari tabel. Dalam hal ini, Anda menggunakan SQLite DELETE
pernyataan.
SQLite DELETE
pernyataan memungkinkan Anda untuk menghapus satu baris, beberapa baris, dan semua baris dalam sebuah tabel. Sintaks dari SQLite DELETE
pernyataannya sebagai berikut:
DELETE FROM table
WHERE search_condition;
Code language: SQL (Structured Query Language) (sql)
Dalam sintaks ini:
- Pertama, tentukan nama tabel yang ingin Anda hapus barisnya setelah
DELETE FROM
kata kunci. - Kedua, tambahkan kondisi pencarian di
WHERE
klausa untuk mengidentifikasi baris yang akan dihapus.WHERE
klausa adalah bagian opsional dariDELETE
penyataan. Jika Anda menghilangkanWHERE
klausa,DELETE
pernyataan akan menghapus semua baris dalam tabel.
SQLite juga menyediakan ekstensi ke DELETE
pernyataan dengan menambahkan ORDER BY
dan LIMIT
klausa. Jika Anda mengompilasi SQLite dengan opsi waktu kompilasi SQLITE_ENABLE_UPDATE_DELETE_LIMIT, Anda dapat menggunakan ORDER BY
dan LIMIT
klausa dalam DELETE
pernyataan seperti form berikut:
DELETE FROM table
WHERE search_condition
ORDER BY criteria
LIMIT row_count OFFSET offset;
Code language: SQL (Structured Query Language) (sql)
ORDER BY
klausa mengurutkan baris yang difilter oleh search_condition
sebelumnya di WHERE
klausa dan LIMIT
klausa menentukan jumlah baris yang akan dihapus.
Perhatikan bahwa ketika Anda menggunakan DELETE
pernyataan tanpa WHERE
klausa pada tabel yang tidak memiliki pemicu. SQLite akan menghapus semua baris dalam satu kesempatan alih-alih mengunjungi dan menghapus setiap baris individu. Fitur ini dikenal sebagai pengoptimalan terpotong.
SQLite DELETE
contoh pernyataan
Kami akan menggunakan artists_backup
tabel dibuat dalam cara menyisipkan baris ke dalam tutorial tabel.
Jika Anda tidak mengikuti tutorial itu, Anda dapat membuat artists_backup
tabel dan masukkan data ke dalamnya menggunakan skrip berikut:
-- create artists backup table
CREATE TABLE artists_backup(
artistid INTEGER PRIMARY KEY AUTOINCREMENT,
name NVARCHAR
);
-- populate data from the artists table
INSERT INTO artists_backup
SELECT artistid,name
FROM artists;
Code language: SQL (Structured Query Language) (sql)
Pernyataan berikut mengembalikan semua baris dari artists_backup
tabel:
SELECT
artistid,
name
FROM
artists_backup;
Code language: SQL (Structured Query Language) (sql)
Cobalah
Kami memiliki 280 baris di artists_backup
tabel.
Untuk menghapus artis dengan id 1, Anda menggunakan pernyataan berikut:
DELETE FROM artists_backup
WHERE artistid = 1;
Code language: SQL (Structured Query Language) (sql)
Cobalah
Karena kami menggunakan artistid
untuk mengidentifikasi artis, pernyataan tersebut menghapus tepat 1 baris.
Misalkan Anda ingin menghapus artis yang namanya mengandung kata Santana
:
DELETE FROM artists_backup
WHERE name LIKE '%Santana%';
Code language: SQL (Structured Query Language) (sql)
Cobalah
Ada 9 baris yang nilainya di name
kolom berisi kata Santana
oleh karena itu, 9 baris ini telah dihapus.
Untuk menghapus semua baris di artists_backup
tabel, Anda hanya perlu menghilangkan WHERE
klausa seperti pernyataan berikut:
DELETE FROM artists_backup;
Code language: SQL (Structured Query Language) (sql)
Cobalah
Dalam tutorial ini, Anda telah mempelajari cara menggunakan SQLite DELETE
pernyataan untuk menghapus baris dalam tabel.