Добрый день. Я пытаюсь сохранить данные, полученные из моего запроса, в таблице MySQL. Пробую с "Вставить в выбор". Но мне это не удается.
Вот мой контроллер
public function getHome()
{
/* Aqui mando a traer la conexión para hacer mi consulta */
$home = DB::connection('sqlsrv')->table('v_R_System_valid')->select('v_R_System_valid.Netbios_Name0', 'v_ADD_REMOVE_PROGRAMS.DisplayName0',
'v_ADD_REMOVE_PROGRAMS.Version0', 'v_ADD_REMOVE_PROGRAMS.InstallDate0')
->join('v_ADD_REMOVE_PROGRAMS', 'v_R_System_valid.ResourceID', '=', 'v_ADD_REMOVE_PROGRAMS.ResourceID')
->where('v_R_System_valid.Netbios_Name0', '=', 'DMXL3211')->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', '<>', '')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%Installer%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%UPDATE%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%MUI%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%Tool%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%kit%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%driver%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%Microsoft Visual C++%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%Runtime%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%Outils%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%Components%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%Libraries%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%Framework%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%Proof%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%Plug-in%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%SDK%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%.NET%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%Help%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%Service%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%Setup%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%Pack%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%GUI%')
->where('v_ADD_REMOVE_PROGRAMS.DisplayName0', 'not like', '%Script%')
->orderBy('v_R_System_valid.Netbios_Name0', 'ASC')->distinct()->get();
$auxiliar = 0;
//$SoftMySQL[] Crear un arreglo
foreach ($home as $softSQL) {
//Hacer consulta de este software, y almacenar todo en el arreglo.
$licencia = DB::connection('mysql')->table('lic')->select('NOMSOFLIC', 'ORDCOMLIC')
->where('LIC.NOMSOFLIC', '=', $softSQL->DisplayName0)
->where('LIC.EQUIPO', '=', $softSQL->Netbios_Name0)->get();
if ($licencia->isEmpty() OR ($licencia[0]->ORDCOMLIC=='No hay OC')) {
$soft = DB::connection('mysql')->table('sof')->select('NOMSOF', 'TIPLICSOF', 'TIPIMASOF', 'PERMITIDO', 'JUEGO')//->get();
->where('SOF.NOMSOF', '=', $softSQL->DisplayName0)->get();
if ($soft->isEmpty() or ($soft[0]->TIPLICSOF == "Licenciado" and $soft[0]->TIPIMASOF == "No estandar")) {
$empleado = DB::connection('mysql')->table('EMP')->select('EMP.PUEEMP', 'EMP.IDEEMP', 'EMP.NOMEMP', 'EMP.EMAIL', 'EQU.IDEEQU')
->join('EQU', 'EQU.IDEMP', '=', 'EMP.IDEEMP')
->where('EQU.IDEEQU', $softSQL->Netbios_Name0)
->where('EMP.PUEEMP', 'Empleado')->get();
$arraySoftSQL[$auxiliar] = $softSQL;
$arrayEmpleado[$auxiliar] = $empleado;
$arrayLicencia[$auxiliar] = $licencia;
if ($soft->isEmpty())
$arraySoft[$auxiliar] = 'No listado';
else
$arraySoft[$auxiliar] = $soft;
if ($licencia->isEmpty())
$arrayLicencia[$auxiliar] = 'Sin OC';
else
$arrayLicencia[$auxiliar] = $licencia;
$auxiliar++;
}
}
}
return view('catalogos.home', [
'arraySoftSQL' => $arraySoftSQL,
'arrayEmpleado' => $arrayEmpleado,
'arraySoft' => $arraySoft,
'arrayLicencia' => $arrayLicencia,
'total' => $auxiliar
]);
}
Я видел, что следующий код может работать, но он не работает
public function copyHome(){
$select= DB::select('Insert into home','v_R_System_valid.Netbios_Name0', 'v_ADD_REMOVE_PROGRAMS.DisplayName0','v_ADD_REMOVE_PROGRAMS.InstallDate0',
'SOF.TIPLICSOF', 'SOF.TIPIMASOF','SOF.PERMITIDO', 'SOF.JUEGO','EMP.IDEEMP', 'EMP.NOMEMP','LIC.ORDCOMLIC');
$bindings = $select->getBindings();
$insertQuery = 'INSERT into home (Netbios_Name0, DisplayName0,InstallDate0,TIPLICSOF,TIPIMASOF,PERMITIDO,JUEGO,IDEEMP,NOMEMP,ORDCOMLIC)'. $select->toSql();
DB::insert($insertQuery, $bindings);
}
Может кто-нибудь скажет мне, что я могу сохранить данные, которые я получаю, в другой таблице.