2017-02-04 41 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

您只需創建表「連接(字符串)」,並創建一個該表的模型。

之後,你可以做這樣的事情:

$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將始終使用默認數據庫連接,我們在最後一行:) –