What is difference between TRUNCATE & DELETE?
Answers were Sorted based on User's Feedback
Answer / deva
Truncate is a DDL command and hence cant be rolled back
where as delete is DML command and thus can be rolled back
if not necessary.
| Is This Answer Correct ? | 31 Yes | 3 No |
Answer / jude franco
TRuncate removes all the rows in a table in one go.
Delete deoes it for each row
Truncate does not make entries in a LOG file
Delete makes entries for each row that gets deleted
| Is This Answer Correct ? | 23 Yes | 3 No |
Answer / swapnareddy
Main Differences between Truncate and Delete:
Truncate:
1:Truncate removes all records but using this we cannot
remove a particular record.
2:Truncate is ddl command(data definiton language command)
3:Rollback cannot be done when we use this command.
4:Truncate cannot fire a trigger.
Delete:
1:delete can remove all records or a particular record.
2:delete is a dml command(data manipulation language command)
3:rollback is possible when we use this command.
4:delete can fire a trigger
| Is This Answer Correct ? | 19 Yes | 1 No |
Answer / oracle_tigress
difference between truncate and delete
1.truncate removes rows in one execution..delete removes
rows one by one so truncate is fast..
2.truncate does not creates logs and hence canot be
rolledback and hence is a DDL stmt..DELETE creates rollback
segment hence can be rolled back and hence is a DML stmt.
3.truncate doesnot allow for conditional remove of records
(all records has to remove) DELETE allows conditonal remove
of records(where cluase etc can be used.)
4.triggers are not fired on truncate stmt but trgieers are
fired on DELETE stmt..
| Is This Answer Correct ? | 13 Yes | 2 No |
Answer / suman chakraborty
Truncate can not fire a trigger while delete can fire a
trigger
| Is This Answer Correct ? | 11 Yes | 1 No |
Answer / rampratap singh
Truncate is DDL so it does not create rollback segments,
where as DELETE is DML and creates rollback segments.
Truncate removes/reset the high watermark.
Delete does not do that.
| Is This Answer Correct ? | 10 Yes | 4 No |
Answer / rao
we can utilise the space for record which is uesd to
truncate but delete we cant use same same space.
| Is This Answer Correct ? | 8 Yes | 2 No |
Answer / satya_k21
Hi,
By using truncate command we can delete all the records
in a table , but we cant delete a single record in a table.
by using delete command we can delete a entire records
or a specified record in a table..
Delete is a DML Operation but truncate is DDL Operation
let me know if it is wrong.
Regards,
Satya.k
| Is This Answer Correct ? | 9 Yes | 3 No |
Answer / pravallika
We can specify a condition while using deletecommand.But
Truncate is unconditional
| Is This Answer Correct ? | 4 Yes | 1 No |
Answer / ram kumar
1.Both are same but a little bit difference between them
2.Truncate removes all the rows in the table and it cannot
be rolledback bcoz its a DDL
3.Delete removes the particular record u want in the table
and it can be rolledback bcoz its a DML
4.Truncate is Unconditional and Delete is Conditional
Regards,
Ram Kumar...
| Is This Answer Correct ? | 4 Yes | 1 No |
Can you have multiple SPs with the same name on a database?
Explain the savepoint statement.
What is the difference between DELETE, TRUNCATE, and DROP?
Explain the working of foreign key?
How many disk partitions should I have?
How do I turn a list into a table?
write a query find which rows of a table is updated on 2 days before?
What are the benefits of triggers?
how to check server status with 'mysqladmin'? : Sql dba
What are the various levels of constraints?
How can we debug in PL/SQL?
when is the use of update_statistics command? : Sql dba
Oracle (3259)
SQL Server (4518)
MS Access (429)
MySQL (1402)
Postgre (483)
Sybase (267)
DB Architecture (141)
DB Administration (291)
DB Development (113)
SQL PLSQL (3330)
MongoDB (502)
IBM Informix (50)
Neo4j (82)
InfluxDB (0)
Apache CouchDB (44)
Firebird (5)
Database Management (1411)
Databases AllOther (288)