Raramente uso o mecanismo de armazenamento CSV. Um cenário que achei útil, no entanto, é para importações de dados em massa.
- Crie uma tabela com colunas que correspondam ao meu arquivo CSV de entrada.
- Fora do mysql, apenas usando um prompt de shell,
mv
o arquivo CSV no dicionário de dados do MySQL, substituindo o arquivo .csv que pertence à minha tabela que acabei de criar. ALTER TABLE mytable ENGINE=InnoDB
Voilà! Importação em uma etapa de um grande arquivo de dados CSV usando DDL em vez de INSERT ou LOAD DATA.
Concedido, é menos flexível do que INSERT ou LOAD DATA, porque você não pode fazer NULLs ou substituições personalizadas de colunas individuais, ou qualquer recurso de "substituir" ou "ignorar" para lidar com valores duplicados. Mas se você tiver um arquivo de entrada que seja exatamente o que deseja importar, isso poderá facilitar muito a importação.