Want to import data from each table in a HTML file to a separate MySQL table?
Try Withdata FileToDB, a HTML to MySQL converter, Import each table data in a HTML file to a separate MySQL table, 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 HTML to MySQL locally and privately, avoid uploading HTML 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 table in a HTML file to a separate MySQL table
Select tables in HTML file -> Set MySQL tables -> Import HTML data to MySQL
Choose MySQL and logon.
Click “Wizard – 1 File To N Tables” at task dialog.
Select the “HTML” file type.
then show the wizard.
1. Open a HTML file, select tables.
2. Show existing MySQL tables, choose “Import Type”.
3. Set MySQL tables.
4. Show summary, set “Convert Rows”.
5. Import data from each table in a HTML file to a separate MySQL table.
View imported data in MySQL table
More about HTML file 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
HTML → MySQL reference
Type mapping
| Value kind | in HTML | in MySQL |
|---|---|---|
| Int | <td>1234</td> | INT |
| Bigint | <td>9007199254740993</td> | BIGINT |
| Decimal | <td>1234.56</td> | DECIMAL(p,s) |
| Float | <td>1.234e+10</td> | DOUBLE |
| Text | <td>text</td> | VARCHAR(n) |
| Long text | <td>multi-line text</td> (entities for & <) | LONGTEXT |
| Date | <td>2026-09-18</td> | DATE |
| Datetime | <td>2026-09-18 14:30:00</td> | DATETIME |
| Binary | not representable in a cell | LONGBLOB |
| Boolean | <td>true</td> | TINYINT(1) |
| JSON | <td>{"a":1}</td> (quotes escaped) | JSON |
Dialect differences
HTML 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 HTML | in MySQL |
|---|---|---|
| port | — | 3306 |
| identifiers | Attribute values in quotes; entities for reserved characters | `backtick` |
| row limit | — | LIMIT n |
| dates | Whatever text was rendered | DATETIME, TIMESTAMP, DATE, TIME |
| long text | — | TINYTEXT / TEXT / MEDIUMTEXT / LONGTEXT |
| binary | data: URIs inside src attributes | BLOB / TINYBLOB / LONGBLOB |
| separator | Tags, not delimiters | — |
| encoding | Declared in a meta charset tag or the HTTP header | — |
| typing | None | — |
| shape | Free form; tables are row/column structures inside markup | Tables of rows and columns |
| ceiling | No formal limit | — |
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.