Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

archivo CSV problemas con importacion. Estoy desesperado

Estas en el tema de archivo CSV problemas con importacion. Estoy desesperado en el foro de Mysql en Foros del Web. Buenas foreros, a ver si alguien le ha pasado esto o sabe como arreglarlo. Mi problema es el siguiente: Necesito migrar una base de Filemaker ...
  #1 (permalink)  
Antiguo 14/09/2009, 11:27
 
Fecha de Ingreso: septiembre-2009
Mensajes: 10
Antigüedad: 14 años, 7 meses
Puntos: 0
archivo CSV problemas con importacion. Estoy desesperado

Buenas foreros, a ver si alguien le ha pasado esto o sabe como arreglarlo.

Mi problema es el siguiente: Necesito migrar una base de Filemaker a Mysql y para ello lo que hago es convertirlo a csv. Hasta ahi todo bien, uso ',' para separar los campor y' ;' para fin de linea (por alguna razon '\n' y '\r' NUNCA funciono) . Bueno, MySql carga el archivo a la tabla y ahi viene el problema... los datos los carga bien, pero ocurre un problema con los datos de la primera columna. Como ustedes bien saben, mysql despliega los datos por ejemplo asi:

+-------------+--------------+--------+-----------+
| Codigo | Producto | Precio | Cantidad |
+-------------+--------------+--------+-----------+
| 32567 | cepilloPelo |1240 | 200 |
| 34305 | detergente |2567 | 100 |
| 68678 | arroz |2500 | 500 |

.... .... .... ....

|55677 | frijoles |3000 | 400 |
+-------------+--------------+--------+-----------+

Pero cuando cargo los datos del csv a mi base pasa esto:

+-------------+--------------+--------+-----------+
| Codigo | Producto | Precio | Cantidad |
+-------------+--------------+--------+-----------+
| 32567 | cepilloPelo |1240 | 200 |
34305 | detergente |2567 | 100 |
68678 | arroz |2500 | 500 |

.... .... .... ....

55677 | frijoles |3000 | 400 |
+-------------+--------------+--------+-----------+

No se si se ve bien, pero la barra delimitadora | no aparece luego de la primer entrada. Las implicaciones de esto es que si hago por ejemplo un

SELECT codigo FROM table WHERE producto = 'frijoles';

me despliega bien los datos, pero si hago:

SELECT * FROM table WHERE codigo = '55677';

NO me funciona!. O sea, si busco usando como criterio los valores del primer campo no los reconoce. Alguien sabe como puedo solucionar esto para que la tabla si se cargue correctamente? Supongo que aqui hay gente con buena espuela en mysql y talvez sepan como puede solucionarse.

Una solucion, pero muy "chancha" que se me ocurrio es meter de primer campo en la tabla un campo vacio sin informacion para que ese sea el que no funcione y no afecte:

+----------+-------------+--------------+--------+-----------+
| VACIO | Codigo | Producto | Precio | Cantidad |
+----------+-------------+--------------+--------+-----------+
| | 32567 | cepilloPelo |1240 | 200 |
| 34305 | detergente |2567 | 100 |
| 68678 | arroz |2500 | 500 |

.... .... .... .... ....

| 55677 | frijoles |3000 | 400 |
+----------+-------------+--------------+--------+-----------+

Pero como dije eso esta muy "salir del paso" y quiero que quede bien.

Saludos
  #2 (permalink)  
Antiguo 14/09/2009, 12:17
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: archivo CSV problemas con importacion. Estoy desesperado

revisa que la columna del archivo csv esté en formato de texto. Es muy posible que te tome por defecto como valor numerico y te esconda una de las comillas simples.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:48.