2017-02-04 6 views

答えて

0

app/config/database.phpファイルに複数のデータベース接続を設定できます。

例:

'default' => 'mysql', 

    'connections' => array(

     # Our primary database connection 
     'mysql' => array(
      'driver' => 'mysql', 
      'host'  => 'host1', 
      'database' => 'database1', 
      'username' => 'user1', 
      'password' => 'pass1' 
      'charset' => 'utf8', 
      'collation' => 'utf8_unicode_ci', 
      'prefix' => '', 
     ), 

     # Our secondary database connection 
     'mysql2' => array(
      'driver' => 'mysql', 
      'host'  => 'host2', 
      'database' => 'database2', 
      'username' => 'user2', 
      'password' => 'pass2' 
      'charset' => 'utf8', 
      'collation' => 'utf8_unicode_ci', 
      'prefix' => '', 
     ), 
    ) 

そしてちょうどあなたのクエリで接続名を使用します。

$users = DB::connection('mysql2')->select(...); 
+0

おかげで、私は15デシベルの接続などを追加する必要がありますが、将来的に追加されます。 – vikram

1

あなたは自分の第一DB内のテーブル「接続(文字列)」を作成し、作成することができますそのテーブルのモデル。あなたはこのような何か行うことができます。その後

:私は現在のDBに置く必要があるので、あなたの応答のための

$selected = Connection::query()->where('name', 'fromdropdown')->first(); 
    $connection = $selected; 
       config(['database.connections.data' => array(
        'driver' => 'sqlsrv', 
        'host' => $connection['Database_Server'], 
        'database' => $connection['Database_Name'], 
        'username' => $connection['Database_User'], 
        'password' => $connection['Database_Pass'] 

       )]); 

       DB::setDefaultConnection('data'); 
+0

申し訳ありませんが、もっと正確にすることができます。その接続からどのようにクエリを実行するのですか? – vikram

+0

laravelは常にデフォルトのdb接続を使用します。これは最後の行で設定します:) –

関連する問題