SQLite
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> SQLite

SQLite Delete

Tóm tắt :hướng dẫn này chỉ cho bạn cách sử dụng SQLite DELETE để xóa các hàng khỏi bảng.

Giới thiệu về SQLite DELETE tuyên bố

Bạn đã học cách chèn một hàng mới vào bảng và cập nhật dữ liệu hiện có của bảng. Đôi khi, bạn cần xóa các hàng khỏi bảng. Trong trường hợp này, bạn sử dụng SQLite DELETE tuyên bố.

SQLite DELETE câu lệnh cho phép bạn xóa một hàng, nhiều hàng và tất cả các hàng trong bảng. Cú pháp của SQLite DELETE như sau:

DELETE FROM table
WHERE search_condition;Code language: SQL (Structured Query Language) (sql)

Trong cú pháp này:

  • Đầu tiên, chỉ định tên của bảng mà bạn muốn xóa các hàng sau DELETE FROM từ khóa.
  • Thứ hai, thêm điều kiện tìm kiếm trong WHERE mệnh đề để xác định các hàng cần loại bỏ. WHERE mệnh đề là một phần tùy chọn của DELETE tuyên bố. Nếu bạn bỏ qua WHERE mệnh đề DELETE câu lệnh sẽ xóa tất cả các hàng trong bảng.

SQLite cũng cung cấp một phần mở rộng cho DELETE tuyên bố bằng cách thêm ORDER BYLIMIT điều khoản. Nếu bạn biên dịch SQLite với tùy chọn thời gian biên dịch SQLITE_ENABLE_UPDATE_DELETE_LIMIT, bạn có thể sử dụng ORDER BYLIMIT mệnh đề trong DELETE tuyên bố như mẫu sau:

DELETE FROM table
WHERE search_condition
ORDER BY criteria
LIMIT row_count OFFSET offset;Code language: SQL (Structured Query Language) (sql)

ORDER BY mệnh đề sắp xếp các hàng được lọc theo search_condition trước trong WHERE mệnh đề và LIMIT mệnh đề chỉ định số hàng sẽ bị xóa.

Lưu ý rằng khi bạn sử dụng DELETE câu lệnh không có WHERE mệnh đề trên bảng không có trình kích hoạt. SQLite sẽ xóa tất cả các hàng trong một lần thay vì truy cập và xóa từng hàng riêng lẻ. Tính năng này được gọi là tối ưu hóa cắt ngắn.

SQLite DELETE các ví dụ về tuyên bố

Chúng tôi sẽ sử dụng artists_backup bảng được tạo trong hướng dẫn cách chèn hàng vào bảng.

Nếu bạn không làm theo hướng dẫn đó, bạn có thể tạo artists_backup bảng và chèn dữ liệu vào nó bằng cách sử dụng tập lệnh sau:

-- 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)

Câu lệnh sau trả về tất cả các hàng từ artists_backup bảng:

SELECT
	artistid,
	name
FROM
	artists_backup;Code language: SQL (Structured Query Language) (sql)

Hãy thử nó

Chúng tôi có 280 hàng trong artists_backup bảng.

Để xóa nghệ sĩ có id 1, bạn sử dụng câu lệnh sau:

DELETE FROM artists_backup
WHERE artistid = 1;Code language: SQL (Structured Query Language) (sql)

Hãy thử nó

Bởi vì chúng tôi sử dụng artistid để xác định nghệ sĩ, câu lệnh đã xóa chính xác 1 hàng.

Giả sử bạn muốn xóa các nghệ sĩ có tên chứa từ Santana :

DELETE FROM artists_backup
WHERE name LIKE '%Santana%';Code language: SQL (Structured Query Language) (sql)

Hãy thử nó

Có 9 hàng có giá trị trong name cột chứa từ Santana do đó, 9 hàng này đã bị xóa.

Để xóa tất cả các hàng trong artists_backup bảng, bạn chỉ cần bỏ qua WHERE mệnh đề như câu sau:

DELETE FROM artists_backup;Code language: SQL (Structured Query Language) (sql)

Hãy thử nó

Trong hướng dẫn này, bạn đã học cách sử dụng SQLite DELETE để xóa các hàng trong bảng.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQLite Intersect

  2. chức năng để kiểm tra xem SQLite đang sử dụng journal_mode =WAL hay journal_mode =DELETE

  3. Android:Cách tải hình ảnh động từ máy chủ theo tên của nó từ SQlite

  4. SQLite là gì?

  5. GreenDao freemaker.jar bị thiếu