2011-11-15 3 views
18

Ho un sacco di file Excel/CSV che devo caricare nel mio db in MySQL Workbench (sono su Mac OS X). Ho cercato un buon tutorial o tutorial, ma non ho visto nulla che spieghi chiaramente come caricare i CSV in MySQL Workbench .... qualcuno può aiutarti?Caricamento di file CSV in MySQL Workbench

+0

Controlla http://stackoverflow.com/questions/8031193/import-data-from-excel-spreadsheet-or-cvs-into-mysql –

risposta

3

Deve essere Workbench?

È possibile utilizzare altri scomparti MySQL?

Ecco un esempio: Crea database di

Crea una tabella

load data local infile '/path/whatever.csv' into table dbName.tableName fields terminated by ',' enclosed by '"' lines terminated by '\n';

+0

MySQL workbench sembrava l'opzione più semplice per me .. Sono aperto a qualche suggerimento? – janglosaxon

+1

Se stai cercando GUI, phpMyAdmin può importare CSV. Nella schermata di importazione, è possibile specificare il formato del file e definire i caratteri di terminazione. – djdy

12

stai cercando di caricare i file csv in una tabella di MySQL? Puoi farlo facilmente con il comando LOAD DATA LOCAL INFILE.

Esempio:

LOAD DATA LOCAL INFILE '/data.csv' INTO TABLE my_table FIELDS TERMINATED BY ','

Si dovrebbe essere in grado di entrare in quel comando da qualsiasi interfaccia a MySQL. Suppongo che workbench abbia un modo per eseguire query SQL.

+1

Grazie! Questa affermazione funzionava ma si caricava solo una riga alla volta ... qualsiasi aiuto esperto da parte del banco di lavoro sarebbe apprezzato ma gli darei uno scatto – janglosaxon

+3

potrebbe avere a che fare con il separatore di riga sul file che stai cercando di importare . Prova ad aggiungere uno dei seguenti alla tua query 'LINEE TERMINATE DA '\ r \ n'' o' LINEE TERMINATE DA' \ r''. Se conosci il carattere del separatore di linee, aggiungi 'LINEE TERMINATE DA ''' –

+0

Per me era il '\ r'. Grazie per quello. –

3

Per riferimento, volevo farlo su Windows e utilizzato HeidiSQL per eseguire l'operazione. È stato molto semplice, ho usato Strumenti -> Importa file CSV e ha funzionato al primo tentativo.

+0

Grazie, bananafish. Conosco prima LOAD DATA LOCAL INFILE, ma [HeidiSQL] (http://www.heidisql.com/) è un'opzione molto carina! –

0

Questo è stato contorto per me, ma qui è quello che ho fatto:

avevo installato phpMyAdmin, così ho esportato in formato CSV w/, separato e " come carattere di escape. PHPmyAdmin non ha potuto gestire lo " come escape, quindi trovo/sostituisco tutte le istanze di "" con \" e ha funzionato. Suerte!

0

Aprire il file Excel in Numbers iWork 9) ed esportarlo in CSV. L'importazione in MySQL con l'opzione 'CSV con LOAD DATA' funziona correttamente.

1

Oppure è possibile utilizzare Excel per generare molte istruzioni LOAD DATA INFILE utilizzando un elenco di file da caricare.

Dire, si potrebbe:

  1. posto i nomi dei file in una colonna di Excel
  2. posto una formula come questo nella cella B1:

    = "LOAD DATA INFILE LOCALE 'percorso/"& A1 &"' INTO TABLE nome tablatura CAMPI TERMINATI DA ',' LINEE TERMINATE DA '\ r \ n'; "

  3. copia & incolla cella B1 in celle di colonna B dove necessario.

Quindi, si avrebbe statemens caricare i dati nella colonna B di Excel e può solo copiare & incollarli nella riga di comando mysql.

Forse non sarebbe troppo conveniente per l'utente di scripting, ma potrebbe avere senso per utente forte di MS Excel.