Trong MySQL, bạn có thể xóa dữ liệu dễ dàng như bạn có thể truy vấn hoặc cập nhật dữ liệu đó.
SQL DELETE
Tuyên bố
Sử dụng DELETE
của SQL tuyên bố xóa dữ liệu khỏi cơ sở dữ liệu của bạn. Giống như SELECT
và UPDATE
câu lệnh, DELETE
câu lệnh chấp nhận một WHERE
để bạn có thể chỉ định / các bản ghi chính xác cần xóa.
Cú pháp
DELETE FROM table_name WHERE column_name = value;
Ví dụ
-
Dữ liệu
Đây là dữ liệu trước khi chúng tôi xóa bất kỳ thứ gì.
-
Xóa một số dữ liệu
Hãy xóa nho đỏ khỏi danh sách trái cây của chúng tôi. Nho đỏ đã được chỉ định một FruitId trong tổng số
5
vì vậy chúng tôi sẽ sử dụng nó trongDELETE
của chúng tôi tuyên bố.DELETE FROM Fruit WHERE FruitId = 5;
-
Kết quả
Nếu chúng ta chạy đoạn mã trên, sau đó chọn tất cả các hàng từ bảng, chúng ta có thể thấy rằng bản ghi đã bị xóa.
Xóa tất cả các bản ghi
Bạn có thể xóa tất cả các bản ghi trong một bảng khá dễ dàng. Trên thực tế, xóa tất cả dễ dàng hơn hồ sơ hơn là xóa một bản ghi cụ thể.
-
Mã
Để xóa tất cả bản ghi trong bảng, chỉ cần bỏ qua
WHERE
mệnh đề. Như thế này:DELETE FROM Fruit;
-
Kết quả
Rất tiếc… Không còn hồ sơ nào nữa!
Như bạn có thể tưởng tượng, cần phải rất cẩn thận khi sử dụng DELETE
tuyên bố. Đây là nơi mà chế độ Cập nhật An toàn có thể trợ giúp (như chúng tôi đã đề cập khi cập nhật dữ liệu của mình).
Hóa ra, tôi chỉ có thể chạy câu lệnh trên sau khi tắt chế độ Cập nhật An toàn. Vì vậy, trước khi chạy câu lệnh đó, tôi đã chạy lệnh sau:
SET SQL_SAFE_UPDATES = 0;
Vì vậy, bây giờ có lẽ là thời điểm tốt để tôi bật lại Cập nhật An toàn - trước khi tôi gây thêm bất kỳ thiệt hại nào…
SET SQL_SAFE_UPDATES = 1;
Khôi phục dữ liệu
Bây giờ chúng tôi đã xóa tất cả các bản ghi khỏi Fruit hãy xem liệu chúng ta có thể khôi phục chúng về giá trị ban đầu hay không. May mắn thay cho chúng tôi, trước đây chúng tôi đã viết một tập lệnh để chèn dữ liệu vào bảng của mình.
-
Mã
Vì vậy, chúng ta hãy lấy ra bit điền vào Fruit bảng và chạy:
INSERT INTO Fruit VALUES (1,'Apple',10,1,'2015-02-15 10:30:00','2015-02-15 10:30:00'), (2,'Orange',5,2,'2015-02-15 10:30:00','2015-02-15 10:30:00'), (3,'Banana',20,6,'2015-02-15 10:30:00','2015-02-15 10:30:00'), (4,'Watermelon',10,1,'2015-02-15 10:30:00','2015-02-15 10:30:00'), (5,'Grapes',15,6,'2015-02-15 10:30:00','2015-02-15 10:30:00'), (6,'Strawberry',12,7,'2015-02-15 10:30:00','2015-02-15 10:30:00');
-
Kết quả
Bây giờ bảng của chúng ta sẽ trông giống như trước đó khi chúng ta điền dữ liệu ban đầu.