Want to bulk import TXT files into MySQL tables at one time?
Try Withdata FileToDB, a desktop TXT to MySQL converter for Windows, MacOS, and Linux, Convert TXT 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.
- Convert locally and privately, avoid uploading large or private TXT files 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
Bulk import TXT files into MySQL tables
Login to MySQL -> Choose TXT files -> Set MySQL tables -> Import TXT files to MySQL tables
Choose MySQL and logon.
Click “Wizard – N Files To N Tables” at task dialog.
Select the “TXT” file type.
then show the wizard.
1. Select a folder that constains TXT files.
Support large ( > 4GB ) TXT files.
2. Config first TXT file importing options.
3. Set “Import Type”.
4. Map MySQL tables to TXT files.
5. Summary. Set “Convert Rows” and “Skip Rows” if need.
6. Import TXT files to MySQL tables, 1 file to 1 table, one by one.
View imported data in MySQL table
Bulk import TXT files into MySQL tables in command line
Save “bulk TXT files to MySQL tables” session, then you can:
- Bulk import TXT files into MySQL tables in Windows command line.
- Bulk import TXT files into MySQL tables in Linux command line.
- Bulk import TXT files into MySQL tables in macOS command line.
Set scheduled tasks for bulk importing TXT files into MySQL tables
You can schedule and automate this converting task by:
- Save session and create .bat (Windows) or .sh (Linux/macOS) file for “TXT to MySQL” conversion.
- Set scheduled task for “TXT to MySQL” conversion.
FAQ
More about Withdata FileToDB – TXT 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: MySQL bulk import TXT files into tables in one go
See also:
TXT → MySQL reference
Type mapping
| Value kind | in TXT | in MySQL |
|---|---|---|
| Int | 1234, or right-aligned in a fixed-width column | INT |
| Bigint | 9007199254740993 | BIGINT |
| Decimal | 1234.56 | DECIMAL(p,s) |
| Float | 1.234e+10 | DOUBLE |
| Text | written as-is; padding depends on the chosen layout | VARCHAR(n) |
| Long text | written as-is | LONGTEXT |
| Date | whatever the writer chose | DATE |
| Datetime | whatever the writer chose | DATETIME |
| Binary | not representable | LONGBLOB |
| Boolean | Y / N, or 1 / 0, or TRUE / FALSE | TINYINT(1) |
| JSON | written as-is | JSON |
Dialect differences
TXT 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 TXT | in MySQL |
|---|---|---|
| port | — | 3306 |
| identifiers | None by convention | `backtick` |
| row limit | — | LIMIT n |
| dates | Whatever the writer produced; no convention is guaranteed | DATETIME, TIMESTAMP, DATE, TIME |
| long text | — | TINYTEXT / TEXT / MEDIUMTEXT / LONGTEXT |
| binary | Not supported | BLOB / TINYBLOB / LONGBLOB |
| separator | Whatever was chosen - often fixed column widths | — |
| encoding | No declaration - UTF-8 works only with a BOM | — |
| typing | None - every field is text | — |
| shape | Free form; a parser has to be told the layout | 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.