Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Laravel mengubah parameter basis data saat dijalankan

Saya menyelesaikannya dengan cara ini:

Bagian config::set salah, untuk mengakses konfigurasi database, saya harus menggunakan gaya titik (.), dengan cara ini:

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));

Dan kemudian sambungkan kembali ke DB:

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

Saran saya untuk semua yang memiliki masalah ini, gunakan koneksi db ganda, satu untuk db utama (server db) dan satu untuk db pelanggan. Dengan cara ini Anda dapat beralih ke kedua db, dengan kode sederhana ini:

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

Dengan perintah pertama Anda dapat memilih DB pelanggan dan dengan perintah kedua Anda dapat menghubungkannya.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. pakar mySQL - butuh bantuan dengan 'berpotongan'

  2. Tidak dapat menginstal permata mysql2 di macOS Sierra

  3. java.sql.SQLException:Sudah ditutup

  4. Apa perbedaan antara operator <> dan !=di MySQL?

  5. MySQL ORDER OLEH x-y/x ASC