Unterschied zwischen DELETE, TRUNCATE und DROP

In diesem Beitrag möchte die Unterschiede der drei Befehle DELETE, TRUNCATE und DROP beschreiben. Im allgemeinen kann man sagen, dass mit Hilfe dieser Befehle die Daten gelöscht werden können. Was ist also der Unterschied und wann soll welcher Befehl verwendet werden?