[英]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.