Loading CSV files into MySQL Workbench

后端 未结 6 648
旧巷少年郎
旧巷少年郎 2021-02-12 16:10

I have a lot of excel/ CSV files that I need to load into my db in MySQL Workbench (I\'m on Mac OS X). I\'ve searched around for a good walk-through or tutorial, but I haven\'t

相关标签:
6条回答
  • 2021-02-12 16:32

    For reference, I wanted to do this on Windows and used HeidiSQL to accomplish the task. It was very straightforward, I used Tools -> Import CSV file and it worked on the first try.

    0 讨论(0)
  • 2021-02-12 16:37

    Does it have to be Workbench?

    Can you use other MySQL bins?

    Here's an example: Create database

    Create table

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

    0 讨论(0)
  • 2021-02-12 16:38

    are you trying to load csv files into a MySQL table? You can do that easily with the LOAD DATA LOCAL INFILE command.

    Example:

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

    You should be able to enter that command from any interface to MySQL. I'm assuming workbench has a way for you to execute sql queries.

    0 讨论(0)
  • 2021-02-12 16:41

    Open the Excel file in Numbers iWork 9) and export to CSV. Import in MySQL with 'CSV with LOAD DATA' option works fine.

    0 讨论(0)
  • 2021-02-12 16:48

    This was convoluted for me, but here is what I did:

    I had PHPmyAdmin installed, so I exported to CSV w/ , seperated and " as escape character. PHPmyAdmin couldn't handle the " as escape, so I find/replaced all instances of "" with \" and it worked. Suerte!

    0 讨论(0)
  • 2021-02-12 16:50

    Or you could use Excel to generate a lot of LOAD DATA INFILE statements using a list of files to load.

    Say, you could:

    1. place the names of files in A column of Excel

    2. place a formula like this in B1 cell:

      ="LOAD DATA LOCAL INFILE 'path/"&A1&"' INTO TABLE tablename FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n';"

    3. copy & paste B1 cell in B column cells where needed.

    So, you would have LOAD DATA statemens in B column of Excel and could just copy&paste them into mysql command line.

    Maybe it would not be too convinient to power user of scripting, but could make sense for strong user of MS Excel.

    0 讨论(0)
提交回复
热议问题