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 |
What are the possible values that can be stored in a boolean data field?
What is the maximum size of sqlite database?
What is a parameter query?
how would you write a query to select all teams that won either 2, 4, 6 or 8 games? : Sql dba
Explain character-manipulation functions?
What steps server process has to take to execute an update statement?
How to get unique records from a table?
how mysql optimizes distinct? : Sql dba
What is the default isolation level in sql server? : Transact sql
Does mysql support pl sql?
how to calculate expressions with sql statements? : Sql dba
What is sql rowcount?
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)