MySQL - Importar csv a mysql

 
Vista:

Importar csv a mysql

Publicado por Rafael Rodriguez (2 intervenciones) el 05/12/2014 10:19:24
Buenos días,
estoy intentando importar un csv a mysql de varias formas y no me funciona ninguna.
El csv está formado por dos filas sparadas por un intro, y los valores por comas. La primera fila son los datos de la primera columna, y la segunda fila los de la segunda columna

csv
(id1, id2, id3, id4,....)
(123,234,455,678,...)

que quedaría:
id1 123
id2 234
id3 455
id4 678

Alguien me puede ayudar?
Muchas gracias de antemano
Saludos
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

Importar csv a mysql

Publicado por Martha (80 intervenciones) el 05/12/2014 19:31:19
Lo que quieres hacer necesita una manipulación previa.

En tu caso tienes dos tuplas, una formada por id1, id2, id3, id4 ... idn, otra formada por 123, 234, 455, 678, ...
y quieres convertirlas en n-tuplas id1 123, id2 234, id3 455, id4 678 ...

Echa un vistazo a los conceptos de álgebra relacional, pero si mal no recuerdo eso es inversión.
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

Importar csv a mysql

Publicado por Rafael Rodriguez (2 intervenciones) el 09/12/2014 09:50:04
Muchas gracias
Si si, eso ya lo he conseguido, pero tengo el siguiente código y no consigo que me lo inserte. El insert no acabo de ver donde ponerlo, ya que he probado al salir del for, pero no acaba de funcionar


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
include "connection.php";
 
$fila = 1;
 
 
 
if (($gestor = fopen("promar.csv", "r")) !== FALSE) {
    while (($datos = fgetcsv($gestor, 1000, ",")) !== FALSE) {
        $numero = count($datos);
        echo "<p> $numero de campos en la línea $fila: <br /></p>\n";
 
 
        $fila++;
		$campo= $codigo;
        for ($c=0; $c < $numero; $c++) {
            echo $datos[$c] . "<br />\n";
        }
    }
    fclose($gestor);
}
?>


y el resultado es
id
138
146
58
3
76
76
76
76
76
76
17
17
16

user
10.90
10.00
24.60
4.00
21.70
21.30
22.90
21.50
21.70
21.90
6.00

La idea es que lo separo pero tendría que ir insertando según separa.
Gracias de nuevo
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