Sự khác biệt giữa các lệnh TRUNCATE
, DELETE
và DROP
trong SQL Server là gì?
Sự khác biệt giữa các lệnh TRUNCATE
, DELETE
và DROP
trong SQL Server là gì?
Trong SQL Server, các lệnh TRUNCATE
, DELETE
, và DROP
đều được sử dụng để xóa dữ liệu, nhưng chúng có những sự khác biệt quan trọng về cách thức hoạt động và kết quả của việc xóa:
DELETE
DELETE
là một lệnh DML (Data Manipulation Language) được sử dụng để xóa một hoặc nhiều hàng (tuples) trong một bảngDELETE
có thể xóa tất cả hàng hoặc xóa hàng theo điều kiện cụ thể sử dụng WHERE
clauseDELETE
ghi lại mỗi hàng bị xóa trong transaction log, do đó nó chậm hơn so với TRUNCATE
và có thể rollback (hoàn tác) nếu lệnh được thực hiện trong một giao dịchTRUNCATE
TRUNCATE
cũng là một lệnh DDL (Data Definition Language) được sử dụng để xóa tất cả hàng trong một bảng một cách nhanh chóngWHERE
: TRUNCATE
không cho phép sử dụng WHERE
clause và không thể xóa hàng riêng lẻmiddle
Gợi ý câu hỏi phỏng vấn
Chưa có bình luận nào