sql >> Database teknologi >  >> RDS >> Mysql

Opret forbindelse til en masse databaser samtidigt i Laravel 5.2

Introduktion - 2 forbindelser

Forudsat at du har brug for 2 forbindelser:standard og tilpasset , ville du angive deres konfiguration i din config/database.php som normalt, så har du brug for:

>>> DB::connection()->getDatabaseName()
=> "default"

>>> DB::connection('custom')->getDatabaseName()
=> "customized"

// change the config...
>>> config(['database.connections.custom.database' => 'new_customized_db'])
=> null

// ...but once the connection is already open, config change doesn't affect it...
>>> DB::connection('custom')->getDatabaseName()
=> "customized"

// ...so we need to get rid of existing connection completely (reconnect() won't work)
>>> DB::purge('custom')
=> null

>>> DB::connection('custom')->getDatabaseName()
=> "new_customized_db"

Flere forbindelser

Ovenfor kan du se, hvad der skal gøres. I dit tilfælde kan du blot sætte hele forbindelseskonfigurationen for hver ny forbindelse, du har brug for, og den vil fungere som forventet:

>>> config(['database.connections.on_the_fly' => [
>>>    'database' => 'provided_on_the_fly',
>>>    ...
>>> ]])
=> null

>>> DB::connection('on_the_fly')->getDatabaseName()
=> "provided_on_the_fly"

Veltalende

Hvis du vil bruge brugerdefineret forbindelse til dine Veltalende modeller du kan bruge SomeModel::on('on_the_fly')->find($id) (hentet model instans vil bruge forbindelsen til alle efterfølgende handlinger)




  1. VIF'er, der returnerer aliasede koefficienter i R

  2. 3 områder, der vil drage fordel af at bruge et SQL Server-ydelsesovervågningsværktøj

  3. Hvorfor understøtter NHibernate ikke batching på MySql

  4. Send objekt som inputparameter til lagret procedure med node-oracledb i node js