Withdata Software

Upsert data from TXT (“|” pipe delimited text) file to MySQL without programming

Want to upsert data from TXT (“|” pipe delimited text) file to MySQL ?

Upsert: inserts rows into a table if they do not already exist, or updates them if they do.>

Using FileToDB, a native GUI tool, you can upsert data from TXT (“|” pipe delimited text) file to MySQL (MariaDB, Percona) easily and fast, no need to program, just a few mouse clicks!

Support Windows, Linux, macOS

Here you can download and install FileToDB.

Upsert data from TXT (“|” pipe delimited text) file to MySQL (MariaDB, Percona)

Choose MySQL and logon.

Click “Wizard – 1 File To 1 Table” at task dialog.

Select the “TXT” file type.

then show the wizard.

1. Open a TXT (“|” pipe delimited text) file.

2. Select a table and config fields.

Set “Load Type” to “Upsert”, choice “By Key”.

3. Preview data.

4. Upsert TXT data to MySQL (MariaDB, Percona).

View upserted data

You can schedule and automate this converting task by:

1) Save session and create .bat file.

2) Set scheduled task.


More about FileToDB – the tool to upsert data from TXT (“|” pipe delimited text) file to MySQL (MariaDB, Percona)

30-day free trial

TXT → MySQL reference

Type mapping

Value kindin TXTin MySQL
Int1234, or right-aligned in a fixed-width columnINT
Bigint9007199254740993BIGINT
Decimal1234.56DECIMAL(p,s)
Float1.234e+10DOUBLE
Textwritten as-is; padding depends on the chosen layoutVARCHAR(n)
Long textwritten as-isLONGTEXT
Datewhatever the writer choseDATE
Datetimewhatever the writer choseDATETIME
Binarynot representableLONGBLOB
BooleanY / N, or 1 / 0, or TRUE / FALSETINYINT(1)
JSONwritten as-isJSON

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.

Propertyin TXTin MySQL
port—3306
identifiersNone by convention`backtick`
row limit—LIMIT n
datesWhatever the writer produced; no convention is guaranteedDATETIME, TIMESTAMP, DATE, TIME
long text—TINYTEXT / TEXT / MEDIUMTEXT / LONGTEXT
binaryNot supportedBLOB / TINYBLOB / LONGBLOB
separatorWhatever was chosen - often fixed column widths—
encodingNo declaration - UTF-8 works only with a BOM—
typingNone - every field is text—
shapeFree form; a parser has to be told the layoutTables of rows and columns
ceilingNo formal limit—

Command line

SideCommand
MySQLmysqldump, 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.