[英]Connecting to two databases in Laravel 5
我可以在Laravel 5創建的項目中連接數據庫,但是我使用此代碼。
在此之前,有什么方法可以添加User::all()
->select("select * from users");
?
public function index(){
$user = \DB::connection('nombrebd')->select("select * from users");
$user2 = \DB::connection('nombrebd2')->select("select * from users");
return $user+$user2;
}
更新
對不起我的不好的解釋,我需要在兩個不同的數據庫中接收有關用戶的所有信息。
如果要使用Eloquent作為查詢的基礎以避免編寫實際的SQL語句,則可以執行以下操作從每個數據庫中獲取所有用戶:
$user = App::make('App\User')->setConnection('nombrebd')->get();
$user2 = App::make('App\User')->setConnection('nombrebd2')->get();
您無法隨意使用User::all()
,因為這會初始化查詢構建器實例並一次性獲取所有結果,因此無法指定應使用的連接。
您可能有兩個模型,在其中一個模型中,您可以指定備用連接:
protected $connection = 'mysql-alt';
查詢兩個模型后,甚至可以將它們合並為:
$users = $user_list_a->merge($user_list_b);
在處理舊數據庫時,我使用這種方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.