Importanto de um arquivo CSV para o MySQL abril 28, 2010
Posted by Rafael Affonso in Banco de Dados, MySQL.Tags: csv, importação, MySQL
trackback
Há alguns meses me deparei com um probleminha, precisava importar um conteúdo de um arquivo CSV para uma tabela de um banco MySQL e não possuía nenhuma ferramenta gráfica para isso (que vergonha).
É impressionante como as ferramentas gráficas nos deixam viciados…
Pois bem, dei uma pesquisada no google e achei um post rápido, porém interessante:
http://fiorix.wordpress.com/2008/04/17/importando-e-exportando-csv-no-mysql/
Achei também http://dev.mysql.com/doc/refman/5.0/en/load-data.html
O que posso acrescentar a isso é uma rápida explicação ao código, embora ele seja um tanto quanto óbvio para um programador intermediário:
LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name'
[REPLACE | IGNORE]
INTO TABLE tbl_name
[CHARACTER SET charset_name]
[FIELDS
[TERMINATED BY 'string']
[[OPTIONALLY] ENCLOSED BY 'char']
[ESCAPED BY 'char']
]
[LINES
[STARTING BY 'string']
[TERMINATED BY 'string']
]
[IGNORE number LINES]
[(col_name_or_user_var,...)]
[SET col_name = expr,...]
No meu o SQL ficou assim:
LOAD DATA LOCAL INFILE ‘/home/rafael/documentos/ouvidoria/tabela_class.csv’ (caminho do arquivo)
INTO TABLE classificacoes (nome da tabela onde os dados serão gavados)
FIELDS TERMINATED BY ‘,’ (a separação em csv é ‘,’, mas se fosse um outro arquivo texto )
LINES TERMINATED BY ‘\n’; (nesse caso represento que linha termina em quebra de linha)
Vale ressaltar que a maioria das importaçãoes de arquivos CSV não vão mudar muito com relação a este meu, pois seguem um padrão . Lembro também você deve ter uma tabela prontinha pra receber esses dados, com o numero e tipo de campos corretos.
Espero que isso possa ajudar!
Comentários»
No comments yet — be the first.