Câu hỏi phỏng vấn SQL
Câu hỏi

Các thao tác TRUNCATEDELETE ảnh hưởng như thế nào đến cột Identity trong SQL?

Câu trả lời

Các thao tác TRUNCATE và DELETE có những ảnh hưởng khác nhau đối với cột Identity trong SQL Server. Khi sử dụng lệnh TRUNCATE, bộ đếm của cột Identity sẽ được đặt lại về giá trị gốc (seed value) được định nghĩa cho cột đó. Nếu không có giá trị gốc nào được định nghĩa, giá trị mặc định là 1 sẽ được sử dụng. Điều này có nghĩa là sau khi thực hiện lệnh TRUNCATE, nếu bạn thêm dữ liệu mới vào bảng, bộ đếm Identity sẽ bắt đầu lại từ 1 hoặc giá trị gốc đã định nghĩa

Ngược lại, khi sử dụng lệnh DELETE để xóa dữ liệu, bộ đếm của cột Identity không bị đặt lại. Nó sẽ tiếp tục tăng lên từ giá trị cuối cùng mà nó đã đạt được trước khi thực hiện lệnh DELETE. Điều này có nghĩa là sau khi xóa dữ liệu bằng lệnh DELETE, nếu bạn thêm dữ liệu mới, giá trị Identity cho hàng mới sẽ tiếp tục từ giá trị tiếp theo của bộ đếm trước khi xóa

Ví dụ, nếu bạn có một bảng với cột Identity và giá trị cuối cùng là 5, sau khi sử dụng TRUNCATE và thêm một hàng mới, giá trị Identity cho hàng mới sẽ là 1. Tuy nhiên, nếu bạn sử dụng DELETE để xóa tất cả các hàng và sau đó thêm một hàng mới, giá trị Identity cho hàng mới sẽ là 6

senior

senior

Gợi ý câu hỏi phỏng vấn

middle

Sự khác biệt giữa UNIONUNION ALL trong SQL là gì?

expert

Sự khác biệt giữa B-Tree, R-TreeHash indexing trong SQL là gì?

junior

Làm thế nào để chọn 5 bản ghi đầu tiên từ một bảng trong SQL?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào