在CakePHP你必須定義多個數據庫的配置。
在CakePHP 2:
- 設置 '模式' 參數去你的配置
- 創造新CONFIGS您的所有模式的
- 使用正確的模式在你的模型
例如,數據庫conf:
public $default = array(
'datasource' => 'Database/Postgres',
'persistent' => false,
'host' => 'localhost',
'login' => 'my_db_user',
'password' => 'my_db_passw',
'database' => 'my_project_db',
'prefix' => '',
'encoding' => 'utf8',
'schema' => 'postgres'
);
public $other_schema = array(
'datasource' => 'Database/Postgres',
'persistent' => false,
'host' => 'localhost',
'login' => 'my_db_user',
'password' => 'my_db_passw',
'database' => 'my_project_db',
'prefix' => '',
'encoding' => 'utf8',
'schema' => 'other_schema'
);
如果你想在一個模式中使用它:
class AppModel extends AppModel {
public $useDbConfig = 'other_schema';
}
在CakePHP3方式是一樣的,只是有數據庫配置/ app.php,你必須使用
use Cake\Datasource\ConnectionManager;
$connection = ConnectionManager::get('default');
您指定架構在你的database.php中...或者你是否要求爲每個查詢選擇模式? – domsom
那麼,我需要兩種解決方案,但第一個是一個好的開始......請參閱(編輯)PS3,我可以指定像前綴,類DATABASE_CONFIG {... $默認'架構'=>'MySCHEMA',。 ..''? –