CakePHP

CakePHPでテーブル内容をTRUNCATEで消去する方法

2015/10/09

API から取得したデータを一時的にテーブルに保存し、その内容を処理・成形してから本番用テーブルへ移行する、という処理を CakePHP で行なっているのですが、一時テーブルの内容を API を叩く際にクリーンしてからインサートやろうということで、TRUNCATE する事にしました。その備忘録です。

CakePHPでTRUNCATEする方法

app_model

CakePHPではおなじみの、app_modelに以下内容を記述。

[php]
/**
* テーブル内容消去
*/
function truncate( $tableName = null )
{
if (is_null($tableName)) {
$tableName = $this->table;
}

if (!$tableName || is_null($tableName)) {
return false;
}

return $this->getDataSource()->truncate($tableName);
}
[/php]

使い方は以下のように、コントローラーから モデル名(TmpSample)を指定するだけ。

samples_controller.php

[php]
//テーブル内容消去
$this->TmpSample->truncate();
[/php]

これだけで幸せになれます。

[tgAmazonItemLookup asin="B00IJ4P87E" related="1"]

-CakePHP
-, , ,