Trabajar con mas de una base de datos y esquemas en postgres y yii2
1. En el directorio config crear las conexiones
return [
'class' => 'yii\db\Connection',
'dsn' => 'pgsql:host=localhost;port=5432;dbname=prueba',
'username' => 'postgres',
'password' => 'password',
'charset' => 'utf8',
'schemaMap' => [
'pgsql'=> [
'class'=>'yii\db\pgsql\Schema',
'defaultSchema' => 'public' //specify your schema here
]
],
];
2. Habiltiar las conexiones en web.php
'components' => [
......
//'db' => $db,
'db'=>require(__DIR__ . '/db.php'),
'db2'=>require(__DIR__ . '/db2.php'),
]
3. Crear el modelo y CRUD con la herramienta gii
4. Crear las consultas con las nuevas conexion haciendo uso de esquemas y tablas
$connection = Yii::$app->db2;
$commandc = $connection->createCommand('SELECT count(*) as tot FROM datosfuncionario.distrito ');
$resultc = $commandc->queryAll();
echo ($resultc[0]['tot']);
Comentarios