what is the difference between Delete and Truncate
Answer Posted / soorai ganesh
DELETE is a logged operation on a per row basis. This means that the deletion of each row gets logged and physically deleted.
You can DELETE any row that will not violate a constraint, while leaving the foreign key or any other contraint in place.
TRUNCATE is also a logged operation, but in a different way. TRUNCATE logs the deallocation of the data pages in which the data exists. The deallocation of data pages means that your data rows still actually exist in the data pages, but the extents have been marked as empty for reuse. This is what makes TRUNCATE a faster operation to perform over DELETE.
You cannot TRUNCATE a table that has any foreign key constraints. You will have to remove the contraints, TRUNCATE the table, and reapply the contraints.
TRUNCATE will reset any identity columns to the default seed value. This means if you have a table with an identity column and you have 264 rows with a seed value of 1, your last record will have the value 264 (assuming you started with value 1) in its identity columns. After TRUNCATEing your table, when you insert a new record into the empty table, the identity column will have a value of 1. DELETE will not do this. In the same scenario, if you DELETEd your rows, when inserting a new row into the empty table, the identity column will have a value of 265.
I believe its enough to you...............
Is This Answer Correct ? | 4 Yes | 0 No |
Post New Answer View All Answers
What is bit data type?
Explain user defined views?
How to download microsoft sql server 2005 express edition?
Can two tables share a primary key?
How do you rebuild an identity column?
What are the new features in SQL Server 2005 when compared to SQL Server 2000?
Mention a few common trace flags used with sql server?
after migrating the dts packg to ssis by using migrtn wizrd in 2005. iam not able to open ssis pack and getting error. what r those errors? how to resolve?
Explain how you can deploy an SSRS report?
Can you index views?
please differentiate between delete and truncate?
You want to check the syntax of a complicated update sql statement without executing it. What command should you use?
How to find the login name linked to a given user name?
Do you know what is sql service broker?
What are the database objects? : SQL Server Architecture