sql >> Databasteknik >  >> RDS >> Mysql

Laravel ändrar databasparametrar vid körning

Jag löste på detta sätt:

Delen av config::set var fel, för att komma åt databaskonfigurationen bör jag använda stilen punkt (.) på detta sätt:

Config::set("database.connections.sqlsrv.host", Crypt::decrypt($cliente->Server));
Config::set("database.connections.sqlsrv.database", $cliente->NomeDB);
Config::set("database.connections.sqlsrv.username", Crypt::decrypt($cliente->Username));
Config::set("database.connections.sqlsrv.password", Crypt::decrypt($cliente->Password));

Och återanslut sedan till DB:

\Illuminate\Support\Facades\DB::reconnect();

Mitt råd till alla som har detta problem är att använda en dubbel db-anslutning, en för huvuddb (server db) och en för kunddb. På så sätt kan du byta till båda db, med denna enkla kod:

Config::set("database.default", "sqlsrvCustomer");
\Illuminate\Support\Facades\DB::reconnect();

Med det första kommandot kan du välja kund-DB och med det andra kan du ansluta till det.



  1. MySQL tät rankning för varje grupp/partition

  2. Escapende et-tecken i SQL-sträng

  3. Dela upp varchar i separata kolumner i Oracle

  4. MySQL var INTE I namnmatrisen?