Delete and Truncate does the job of removing the rows from the Table. The difference lies in the fact that, When we issue a delete command we can rollback the statement issued, where as in Truncate rollback cannot be issued.
Delete: By using Delete we can delete particular rows..through Where condition
eg. delete from emp where age=10
Drop: if we want to delete the whole table...i.e...table structure,attributes,indexes..every thing we use drop
eg. drop table emp
Truncate:if we only want to get rid of the data inside the table and not the table itself we use truncate
eg.truncate table emp
DELETE Statement: This command deletes only the rows from the table based on the condition given in the where clause or deletes all the rows from the table if no condition is specified. But it does not free the space containing the table.
TRUNCATE statement: This command is used to delete all the rows from the table and free the space containing the table.
Delete : Delete is DML Command it mean once you delete the containts from table you can revert back.
Truncate: it is DDL command it mean once you delete the containts from the table you can't roll back.