Як підключитися до кількох БД у Yii2

Як підключитися до кількох БД у Yii2

Щоб підключитися до кількох баз даних у фреймворку Yii2, потрібно:

1. Створити два конфіги підключення до БД у конфігураційному файлі сайту. У мене підключення винесені в окремі файли, і мають такий вигляд (приклад).

Підключення до першої бази даних:

return  [
	'class' => 'yiidbConnection',
	'dsn' => 'mysql:host=127.0.0.1;dbname=work_db1',
	'username' => 'root',
	'password' => '',
	'charset' => 'utf8',
	'tablePrefix' => 'tbl_',
];

Підключення до другої бази даних:

return  [
	'class' => 'yiidbConnection',
	'dsn' => 'mysql:host=127.0.0.1;dbname=work_db2',
	'username' => 'root',
	'password' => '',
	'charset' => 'utf8',
	'tablePrefix' => 'tbl_',
];

2. У базовому конфігураційному файлі прописуємо:

'db' => require(__DIR__ . '/db.php'),
'db2' => require(__DIR__ . '/db2.php'),

Отримуємо вміст бази даних за нашим SQL-запитом:

$Query = (new yiidbQuery());
$Command = Yii::$app -> db2;

$data_ar = $Command -> createCommand(
	$Query -> select('*')
	-> from('{{%authitem}}')
	-> createCommand()
	-> getRawSql()
)
-> queryAll();

echo"<pre>";print_r($data_ar);echo"</pre>";
Пости на схожі теми

З вашим сайтом на фреймворку Yii2 проблеми? потрібний додатковий функціонал?
Тоді напишіть мені через форму зворотного зв'язку, і я постараюся вам допомогти.

Напишіть коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *