SNa*_*aRe 6 php mysql join laravel laravel-5
这就是我们如何使用Laravel处理多个数据库连接,这是一个PHP框架而不是Python(对于谁来说这是一个重复的帖子)
<?php
return array(
'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' => '',
),
),
);
Run Code Online (Sandbox Code Playgroud)
这就是您连接到此数据库的方式.
$user1 = User::on('mysql1')->where(/* ... */)->get()
$user2 = User::on('mysql2')->where(/* ... */)->get()
Run Code Online (Sandbox Code Playgroud)
这些只是SELECT查询.因此,Eloquent完美无缺.
但是,当我想在这两个数据库之间执行JOIN查询操作时,这似乎是不可能的.
基本上你不能使用 Eloquent ORM 或 Laravel 的查询构建器来做到这一点。
但是,您可以尝试使用原始表达式(https://github.com/laravel/framework/blob/8865d2276be94f0a3497ba3bd26c906ae9e91e1c/src/Illuminate/Database/Query/Expression.php#L13)或类似的东西,但你会编写代码从查询结果创建模型。
如果您使用 Laravel 4,这个问题会有所帮助:Laravel 4: how to run a raw SQL?
| 归档时间: |
|
| 查看次数: |
1606 次 |
| 最近记录: |