Want to import data from each sheet in an Excel file to a separate MySQL table?
Try Withdata FileToDB, a desktop Excel to MySQL converter for Windows, MacOS, and Linux, Convert Excel to MySQL, Easy and Fast.
- Can run in GUI mode, Step by Step, just a few mouse clicks.
- Can run in Command line, for Scheduled Tasks and Streams.
- Import Excel to MySQL locally and privately, avoid uploading Excel file(s) to online services.
- Support Windows, Linux, and macOS.
Download Withdata FileToDB
Windows 64 bit
Windows 32 bit
Linux .deb (For Debian, Ubuntu) 64 bit
Linux .rpm (For Red Hat, Fedora, SUSE) 64 bit
MacOS 64 bit
Import data from each sheet in an Excel file to a separate MySQL table
Login to MySQL -> Select Excel worksheets -> Set MySQL tables -> Excel worksheets to MySQL tables
Choose MySQL and logon.
Click “Wizard – 1 File To N Tables” at task dialog.
Select the “Excel” file type.
then show the wizard.
1. Open Excel file, select worksheets.
2. Show existing MySQL tables, choose “Import Type”.
3. Set MySQL tables.
4. Show summary, set “Convert Rows”.
5. Import data from each sheet in an Excel file to a separate MySQL table.
View imported data in MySQL table
More about Excel to MySQL converter
Download Withdata FileToDB
Windows 64 bit
Windows 32 bit
Linux .deb (For Debian, Ubuntu) 64 bit
Linux .rpm (For Red Hat, Fedora, SUSE) 64 bit
MacOS 64 bit
See Video: Import each worksheet in an Excel file to a separate MySQL table at one time
EXCEL → MySQL reference
Type mapping
| Value kind | in EXCEL | in MySQL |
|---|---|---|
| Int | 1234 (a real numeric cell) | INT |
| Bigint | 9007199254740993 (exact only while the cell stays text) | BIGINT |
| Decimal | 1234.56 (numeric cell, format controls the displayed decimals) | DECIMAL(p,s) |
| Float | 1.234E+10 (numeric cell) | DOUBLE |
| Text | text cell; leading zeros survive only if the column is text | VARCHAR(n) |
| Long text | text cell; wraps inside the cell rather than the row | LONGTEXT |
| Date | a serial number plus a date cell format | DATE |
| Datetime | a serial number plus a date-time cell format | DATETIME |
| Binary | not representable as data | LONGBLOB |
| Boolean | TRUE / FALSE (a real boolean cell) | TINYINT(1) |
| JSON | a text cell; the quotes are part of the value | JSON |
Dialect differences
EXCEL is a file format and MySQL is a database server, so the target has to be told the types the file never carried - the rows below are where the two sides diverge.
| Property | in EXCEL | in MySQL |
|---|---|---|
| port | — | 3306 |
| identifiers | Not applicable; a cell holds exactly one value | `backtick` |
| row limit | — | LIMIT n |
| dates | Stored as a serial number; only the cell format makes it lo... | DATETIME, TIMESTAMP, DATE, TIME |
| long text | — | TINYTEXT / TEXT / MEDIUMTEXT / LONGTEXT |
| binary | Only as text or an embedded object, not as a data column | BLOB / TINYBLOB / LONGBLOB |
| separator | Cells, not delimiters | — |
| encoding | UTF-8 internally, declared in the package | — |
| typing | Real cell types: text, number, date, boolean, error | — |
| shape | Multiple sheets, each a flat grid | Tables of rows and columns |
| ceiling | 1,048,576 rows x 16,384 columns per sheet; 255 sheets per w... | — |
Command line
| Side | Command |
|---|---|
| MySQL | mysqldump, or mysql -e "SELECT ..." > out.csv |
| MySQL (load) | mysqlimport, or LOAD DATA INFILE |
Convert your data online, free
Free in-browser converters for CSV, Excel, JSON, XML and SQL: Withdata Online Data Conversion. Large files, batch conversion or scheduling? See the offline desktop apps, or browse all data conversion tools.