(cakephp) 複数のデータベースを扱う方法と切り替え
データベースの複数定義
app/config/database.php
class DATABASE__CONFIG { public $default = array( 'datasource' => 'Database/mysql', 'persistent' => false, 'host' => '123.123.456.789', 'login' => 'hoge.com', 'password' => 'hoge2012', 'database' => 'hogehoge', 'prefix' => '', 'encoding' => 'utf8', ); //追加した別のデータベース public $hoge = array( 'datasorce' => 'Database/mysql', 'persistent' => false, 'host' => 'localhost', 'login' => 'hoge', 'password' => 'hoge2012', 'database' => 'hoge', 'prefix' => '', 'encoding' => 'utf8', ); }
各データベースの呼び出し
1. controllersにDBの切り替えを記述
普段は$defaultを扱い、たまに別のデータベースを扱うならコントローラーに書く
$this->Model->useDbConfig = $dbname//DB変更 $this->Model->useDbConfig = $dbname//DBを元に戻す