CakePHP deleting all records in a table

Aditya P Bhatt picture Aditya P Bhatt · May 2, 2011 · Viewed 19k times · Source

I want to delete all records from my tables using CakePHP syntax, how can I ?

I tried, deleteAll but it works with conditions only, the same way for delete, Is there any other way, I can empty my tables?

Let me know !

Answer

JohnP picture JohnP · May 2, 2011

http://book.cakephp.org/2.0/en/models/deleting-data.html

I haven't used deleteAll() to delete an entire table, so I don't know whether you can call it without arguments (edit: you can't call it without arguments). However, you could just use

$this->Model->deleteAll(array('1 = 1'));

However, I think it would be better if you just ran the TRUNCATE SQL command via the query() method.

$this->Model->query('TRUNCATE table;');