Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/10/2008, 17:36
K-SuMa
 
Fecha de Ingreso: diciembre-2007
Mensajes: 50
Antigüedad: 16 años, 4 meses
Puntos: 1
Pregunta load data... es posible esto???

Hola a todos... estoy automatizando unos procesos q tengo y entre ellos se encuentra el cargar archivos de texto lo cual lo hago con el load data como todos me imagino donde los nombres de los archivos de texto q jalo de un servidor cambian dependiendo de cuando sea la data x ejemplo hoy 11-10-2008 debo trabajar con la data de ayer (workflow_20080810.txt) q es la ultima y mañana con la de hoy y asi sucesivamente como este proceso se realiza todos los dias decidi hacer un batch q me ejecute la carga pero tonces me tope con este incertidumbre "como hago para cambiar el nombre del archivo en mi load data" probe pasar la ruta por con una variable pero naa aki como lo hice:

Código:
 /* esto me devuelve la fecha de ayer sin los guiones */
mysql>set @fecha=curdate()-1;
 /*armo la ruta del archivo */
mysql>set @archivo=concat('F:\\WORKFLOW_',@fecha,'.txt');
/* y esto es lo q no me corre sale error */
mysql>load data infile @archivo into table tdp.wf_atis 
           fields terminated by '|' enclosed by '\"'
           lines terminted by '\r\n' ignore 1 lines;
Me sale el siguiente error nose si lo esta haciendo bien tal vez el mysql no acepte una variable como ruta...
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@ruta into table tup.wf_atis fields terminated by '|' enclosed by '\"' lines ter' at line 1

Otra forma en la cual pense hacerlo fue creando la sentencia en un string... pero despues como ejecuto ese string hay alguna forma??? ya busque x casi todo el manual y no he encontrado naa.... espero su gentil apoyo

Salu2,
--------------------------
K-SuMa
Prefiero sacrificar un poco de sueño a sacrificar mis sueños