Ngôn ngữ SQL - DELETE TABLE

Câu lệnh DELETE TABLE trong SQL

Câu lệnh DELETE được sử dụng để xóa các hàng khỏi bảng. Nếu bạn muốn xóa một hàng cụ thể khỏi bảng, bạn nên sử dụng điều kiện WHERE.

DELETE FROM table_name [WHERE condition];  

Nếu bạn không dùng điều kiện WHERE, nó sẽ xóa tất cả các hàng khỏi bảng.

DELETE FROM table_name;  

Có một số thuật ngữ tương tự như câu lệnh XÓA như câu lệnh DROP và câu lệnh TRUNCATE nhưng chúng không hoàn toàn giống nhau, có một số khác biệt giữa chúng.


Điểm khác nhau giữa lệnh DELETE và lệnh TRUNCATE

Có một điểm khác nhau nhỏ giữa lệnh DELETE và lệnh TRUNCATE. Lệnh DELETE chỉ xóa các hàng từ bảng dựa trên điều kiện đã được định nghĩa bởi mệnh đề WHERE hoặc xóa tất cả các hàng từ bảng nếu điều kiện này không được xác định. Nhưng nó không giải phóng bộ nhớ chứa bảng đó.

Trong khi đó, lệnh TRUNCATE xóa tất cả các hàng từ bảng và giải phóng bộ nhớ chứa bảng đó. Để xóa tất cả các hàng từ bảng SINHVIEN, truy vấn như sau:

TRUNCATE TABLE SINHVIEN; 

Điểm khác nhau giữa lệnh DROP và lệnh TRUNCATE

Khi bạn sử dụng lệnh DROP, nó xóa hàng của bảng cùng với định nghĩa bảng, để tất cả các mối quan hệ giữa bảng đó với bảng khác là không còn hiệu lực nữa. Khi bạn DROP một bảng:

Cấu trúc bảng sẽ bị xóa.

Mối quan hệ sẽ bị xóa.

Các ràng buộc về toàn vẹn dữ liệu sẽ bị xóa.

Quyền truy cập cũng sẽ bị xóa.

Nói cách khác, khi chúng ta sử dụng lệnh TRUNCATE, thì cấu trúc bảng vẫn như cũ, do đó chúng ta không phải mất công tạo lại và không phải đối mặt với các vấn đề trên.