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

Entradas populares de este blog

ScriptCase

Configurar adminlte + yii2