Search code examples
sqlmysqlcsvimportload-data-infile

Tool for importing CSV files into MySQL database?


I've got several CSV files I want to import into a table. They all contain different numbers of columns, so some data will be absent during each import. I need a tool that will let me map which CSV column goes into which MySQL column. Doesn't look like MySQL workbench can do this. What else can I use?


Solution

  • MySQL has the LOAD DATA INFILE syntax:

    LOAD DATA INFILE 'data.txt' INTO TABLE tbl_name
     FIELDS TERMINATED BY ',' ENCLOSED BY '"'
     LINES TERMINATED BY '\r\n'
     IGNORE 1 LINES;
    

    See the documentation about custom data handling.