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.

convert online PIPE file to MySQL  (MariaDB, Percona) table - Choose MySQL and logon

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

convert online PIPE file to MySQL  (MariaDB, Percona) table - task window

Select the “TXT” file type.

Import file data to database table - select file type

then show the wizard.

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

Upsert Data From TXT File To MySQL  (MariaDB, Percona) - open TXT file

2. Select a table and config fields.

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

Upsert Data From TXT File To MySQL  (MariaDB, Percona) - select table

3. Preview data.

Upsert Data From TXT File To MySQL  (MariaDB, Percona) - preview

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

Upsert Data From TXT File To MySQL  (MariaDB, Percona) - Upsert data

View upserted data

Copy Data From TXT File To MySQL  (MariaDB, Percona) - view 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 Download FileToDB

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.


Posted

in

by