What is difference between TRUNCATE and DELETE statement
Answer Posted / samba shiva reddy . m
DELETE TABLE is a logged operation, so the deletion of each
row gets logged in the transaction log, which makes it slow.
DELETE removes rows one at a time and records an entry in
the transaction log for each deleted row.
DELETE Can be used with or without a WHERE clause
DELETE Activates Triggers.
DELETE Can be Rolled back.
DELETE is DDL command
example :
begin transaction deleteoncondition
select * from emp
Delete * from emp where empid = 1
rollback deleteoncondition
select * from emp
sp_help samba --Table structure
TRUNCATE TABLE deletes all the rows in a table, but it
won't log the deletion of each row, instead it logs the
De-allocation of the data pages of the table, which makes it
faster.
Because TRUNCATE TABLE is not logged, it cannot activate a
trigger.
TRUNCATE can not be Rolled back using logs.
TRUNCATE is DDL Command.
TRUNCATE Resets identity of the table.
TRUNCATE wont delete the structure of the table.
DROP will delete the structure of the table also.
| Is This Answer Correct ? | 0 Yes | 0 No |
Post New Answer View All Answers
What are the drawbacks of reporting in ssrs?
What is etl - extraction, transformation, and loading?
What are the advantages of passing name-value pairs as parameters?
Explain DBCC?
How can we use ConnectorJ JDBC Driver with MS SQL?
How to copy the tables, schema and views from one sql server to another?
Define right outer join in sql server joins?
How do I change my passwords (database, LDAP, and so on) without causing an outage?
What is implicit cursors?
How to test a dml trigger in ms sql server?
What is an indexed view?
What is the difference between count () and rowcount ()?
What is user-defined function?
Why use triggers?
What happens if null values are involved in boolean operations?