Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 20
  1. #1

    importare CSV con Mysql

    Buon Giorno a tutti, ho cercato su internet la possibilità di importare un files CSV all'interno di una tabella gia pronta in MySql, pero mi risulta che usando il comando :

    LOAD DATA LOCAL INFILE ‘nome_file_csv’ INTO TABLE nome_tabella FIELDS TERMINATED BY “,” LINES TERMINATED BY “\\r\\n”;’);

    come ho trovato su web ho realizzato lo script richiesto

    <?

    mysql_connect('localhost', 'user', 'passw');
    mysql_select_db('nome_db');
    mysql_query('LOAD DATA LOCAL INFILE 'file.csv' INTO TABLE tabella FIELDS TERMINATED BY "," LINES TERMINATED BY "\\r\\n";');


    ?>


    ma mi segnala questo errore sulla linea della mysql_query

    Parse error: parse error, unexpected T_STRING


    Che posso fare....???

  2. #2
    mysql_query('LOAD DATA LOCAL INFILE "file.csv" INTO TABLE tabella FIELDS TERMINATED BY "," LINES TERMINATED BY "\\r\\n";');

    potevano essere gli apici singoli sul nome del file il problema altrimenti prova a stampare mysql_error();
    Forex: forum dedicato al mercato del trading forex

  3. #3

    Re: importare CSV con Mysql

    Originariamente inviato da ILSANTO71
    Buon Giorno a tutti, ho cercato su internet la possibilità di importare un files CSV all'interno di una tabella gia pronta in MySql, pero mi risulta che usando il comando :

    LOAD DATA LOCAL INFILE ‘nome_file_csv’ INTO TABLE nome_tabella FIELDS TERMINATED BY “,” LINES TERMINATED BY “\\r\\n”;’);

    come ho trovato su web ho realizzato lo script richiesto

    <?

    mysql_connect('localhost', 'user', 'passw');
    mysql_select_db('nome_db');
    mysql_query('LOAD DATA LOCAL INFILE 'file.csv' INTO TABLE tabella FIELDS TERMINATED BY "," LINES TERMINATED BY "\\r\\n";');


    ?>


    ma mi segnala questo errore sulla linea della mysql_query

    Parse error: parse error, unexpected T_STRING


    Che posso fare....???

    sistema gli apici che hai tutto incasinato

  4. #4
    Io ho usato la funzione fgetcvs http://it2.php.net/manual/it/function.fgetcsv.php

    leggo ed inserisco nel db
    Riccardo Tacconi

    www.riccardo.tacconi.name

    Web development - Web hosting

  5. #5
    cioe? hai un esempio che non lo capisco ???

    Grazie

  6. #6
    ti ho postato il link per la funzione php. Basta che ti leggi 4 righe. Trovi un esempio che ti legge il file e te lo stampa in un ciclo while. In quel ciclo levi il comando echo e ci metti una insert per inserire ogni riga nel db. Semplice e flessibile perche` ti permette di modificare/validare i dati prima di inserirli.
    Riccardo Tacconi

    www.riccardo.tacconi.name

    Web development - Web hosting

  7. #7
    scusa ma qua andiamo nel complicato perchè non riesco a seguirti.........

  8. #8
    ti copio il codice di esempio dal link che ti ho postato:

    <?php
    $row = 1;
    $handle = fopen("test.csv","r");
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
    $num = count($data);
    echo "

    $num campi sulla linea $row:
    </p>\n";
    $row++;
    for ($c=0; $c < $num; $c++) {
    echo $data[$c] . "
    \n";
    }
    }
    fclose($handle);
    ?>
    nella riga $handle = fopen("test.csv","r"); ci metti il nome del file che hai, o rinomini il file "test.csv", in questo caso deve stare nella stessa cartella dell'esempio.

    Esegui lo script e stampi a video i dati importati dal file csv.

    Poi in questa parte del codice ci metti la query di insert per mysql (io inserivo in Orcacle ma e` lo stesso):

    <?php
    $row = 1;
    $handle = fopen("test.csv","r");
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
    $num = count($data);
    echo "

    $num campi sulla linea $row:
    </p>\n";
    $row++;
    for ($c=0; $c < $num; $c++) {
    echo $data[$c] . "
    \n";
    }
    $sql = "insert into table values($data[0], $data[1], ...)";
    // esegui query
    }
    fclose($handle);
    ?>
    quindi per ogni riga fai una query di inserimento nel DB
    Riccardo Tacconi

    www.riccardo.tacconi.name

    Web development - Web hosting

  9. #9
    Originariamente inviato da carlo10
    mysql_query('LOAD DATA LOCAL INFILE "file.csv" INTO TABLE tabella FIELDS TERMINATED BY "," LINES TERMINATED BY "\\r\\n";');

    potevano essere gli apici singoli sul nome del file il problema altrimenti prova a stampare mysql_error();
    così non ti funziona?
    Forex: forum dedicato al mercato del trading forex

  10. #10
    no cosi non mi funziona....... ho provato a mettere apposto gli appici ma alla fine sembra che funzioni tutto visto che mi ristituisce la pagina bianca ma la tabella e vuota...

    boh

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.