What is the difference between TRUNCATE and DELETE ?

TRUNCATE and DELETE are both used to remove data from a table in Laravel, but they have some important differences.

What is TRUNCATE ?

TRUNCATE is a DDL (Data Definition Language) statement that removes all rows from a table. It is a much faster operation than DELETE because it does not log each individual row deletion. However, TRUNCATE cannot be rolled back, which means that the data is lost forever if there is an error.

What is DELETE ?

DELETE is a DML (Data Manipulation Language) statement that removes rows from a table based on a WHERE clause. It is a slower operation than TRUNCATE because it logs each individual row deletion. However, DELETE can be rolled back, which means that the data can be recovered if there is an error.

Here is a table summarizing the key differences between TRUNCATE and DELETE:

LoggingDoes not logLogs each row deletion
RollbackCannot be rolled backCan be rolled back
WHERE clauseCannot use a WHERE clauseCan use a WHERE clause

In general, you should use TRUNCATE when you want to remove all rows from a table quickly and you do not need to be able to roll back the operation. You should use DELETE when you need to remove specific rows from a table or when you need to be able to roll back the operation.

Here are some examples of how to use TRUNCATE and DELETE in Laravel:


Thanks for learning 👍👍

Hi I am Amit Kumar Thakur Experienced as s Software Developer with a demonstrated history of working in the information technology and services industry. Skilled in HTML, CSS, Bootstrap4, PHP, Laravel-9 , REST API,FB API,Google API, Youtube Api, Bitbucket,Github,Linux and jQuery. Strong engineering professional focused in Computer/Information Technology Administration and Management. Currently my profile is to Software Developer, analyze the requirement, creating frame for web application, coding and maintenance.

Related Posts

Could not fetch https://api.github.com/repos/Setasign/FPDI/zipball/

When I composer update in Laravel its throwing error could not fetch issues so let’s start to finish this issues. 1st step go to GitHub setting section….

Error: error:0308010C:digital envelope routines::unsupported

In this tutorial I’m going to share how to solve Error: error:0308010C:digital envelope routines::unsupported. Just copy below code and run your terminal. After run above all code…

API calls from the server require an appsecret_proof argument

In this tutorial im going to solve this issue API calls from the server require an appsecret_proof argument. 1st step go to developer facebook advance setting and…

How to Delete All Records Older Than 30 Days in Laravel 10 ?

In Laravel, you can use the Eloquent ORM to delete records older than a certain number of days. Here’s an example of how you can delete all…

How to safely remove Laravel Debugbar ?

What is Laravel Debugbar ? Laravel Debugbar is a package for the Laravel PHP framework that provides a debug bar or toolbar for your application. It offers…

Example of __construct and __destruct in laravel ?

In Laravel, PHP classes can have a constructor and destructor like any other PHP class. The constructor is called when an object is created, and the destructor…

0 0 votes
Article Rating
Notify of
Inline Feedbacks
View all comments
Would love your thoughts, please comment.x