2017-02-14 3 views
1
class Report extends Eloquent { 

protected $connection1 = 'mysql1'; 
    protected $table1 = 'table1'; 

protected $connection2 = 'mysql2'; 
    protected $table2 = 'table2'; 

public function getdetails() { 

$mysql1_conn = DB::connection('mysql1'); 

$mysql2_conn = DB::connection('mysql2'); 

$result = $mysql1_conn->table('table1 as t1') 
      ->{$mysql2_conn->table('table2 as t2')} 
     ->ON('t1.userid' , '=' , 't2.userid') 
     ->select('t1.id','t2.name','t1.number','t2.address') 
     ->get(); 

     return $result; 
} 
} 

я получаю сообщение об ошибкеОбъект класса Осветите Database Query Builder не может быть преобразован в строку, не может получить данные из двух баз данных в одном запросе

"Объект класса Осветите \ Database \ Query \ Builder не может быть преобразован в строку "

ответ

0

Вы не можете запустить один запрос, используя два подключения к базе данных.

+0

В моем синтаксисе запроса или нет способа получить данные из таких объектов данных. – mouli

+0

Замените get() на toSql() и посмотрите на запрос, который генерируется –

+0

Объект класса Illuminate \ Database \ Query \ Builder не может быть преобразован в строку в строке '-> {$ mysql2_conn-> table ('table2 as t2')} ' – mouli