PHP - Usar load data infile en php

 
Vista:

Usar load data infile en php

Publicado por Paola (2 intervenciones) el 26/03/2007 22:39:41
Hola a todos tengo el siguiente codigo que he contruido para importar datosde un archivo de texto a una base de datos mysql pero quiero hacerlo desde php. Sin embargo no me corre me sale error en la linea 14 entonces les pido su ayuda por favor.
<?php

$conexion = mysql_connect("localhost", "root");
if (! $conexion)
{
echo "<h2 align='center'>ERROR: Imposible establecer conexión con el servidor</h2>";
die();
}

$link=mysql_select_db("Prueba", $conexion);
$query = LOAD DATA INFILE "D:\Rutinas Diarias\Trafico\MSC_RT_LP1_070323.tsv" INTO TABLE prueba1 FIELDS TERMINATED BY '/t'('Route','Peak_Hour','Peak_Hour_Day','Peak_Hour_Traffic','Bids','Mht','Avg_of_Top_Hours','ErlangB_Capacity','Utilization','Number_of_Devices','Requiered_Devices','Blocked_Devices','CallCongestion','ASR' );
$mysql_result = mysql_query($query, $link)or die(mysql_error($query."No hay nada"));
?>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Usar load data infile en php

Publicado por Isai (55 intervenciones) el 27/03/2007 01:38:28
Paola yo tambien estoy en eso asi que comparto lo que he investigado por ahora, bien el error que te marca es porque no encuentra el archivo especificado y esto es porque la setencia que usas es para leer un archivo en el equipo local es decir en el servidor de mysql.

Ahora bien si lo que quiere es leer el archivo desde el PC cliente deberas usar la siguiente linea:

LOAD DATA LOCAL INFILE "D:\Rutinas Diarias\Trafico\MSC_RT_LP1_070323.tsv" INTO TABLE prueba1 FIELDS TERMINATED BY '/t'('Route','Peak_Hour','Peak_Hour_Day','Peak_Hour_Traffic','Bids','Mht','Avg_of_Top_Hours','ErlangB_Capacity','Utilization','Number_of_Devices','Requiered_Devices','Blocked_Devices','CallCongestion','ASR' );

Pero aqui empiezan mis problemas, deberas de tener configurado tu servidor con la siguiente con la siguiente opción:

--enable-local-infile

esto es desde el ./configure mas la linea anterior y tus demas lineas de configuración.

Bien pues eso no es todo cuando inicies mysql deberas de hacerlo con la siguiente linea.

--local-infile[=1]

Y listo podras usar la secuencia SQL anterior.

Bien mi problema es que para poder ejecutar la linea anterior puedes usar mysql_options pero a mi me marce que la funcion es desconocida, espero que a ti te funcione.

Otra cosa la linea "--local-infile[=1]" la puedes definir en tu archivo my.cnf y agregar la linea que te comento despues vuelves a arrancar el demonio de Mysql y listo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar