Provided by: dbf2mysql_1.14a-7_amd64 bug


       dbf2mysql, mysql2dbf - convert between xBase and MySQL databases


       dbf2mysql  [-v[v]]  [-f]  [-u|-l|-L] [-n] [-o field[,field]] [-e conversion-file] [-s old-
       name=new-name[,old-name=new-name]] [-i field[,field]] [-d database] [-t table] [-c[c]] [-p
       primary] [-h host] [-F] [-q] [-r] [-x] [-C charset] [-P password] [-U user] dbf-file

       mysql2dbf  [-v[v]]  [-u|-l]  -d  database  -t table [-h host] [-q query] [-P password] [-U
       user] dbf-file


       dbf2mysql takes an xBase file and sends queries to an MySQL server to insert  it  into  an
       MySQL table.

       mysql2dbf dumps a MySQL table to a dbf file.


       -v     Produce some status output.

       -vv    More verbose.

       -vvv   Even more verbose: produce a progress report.

       -f     Translate all field names in the xBase file to lowercase.

       -u     Translate all text in the xBase file to uppercase.

       -l     Translate all text in the xBase file to lowercase.

       -L     Use LOCAL INFILE for table loading in MySQL.

       -n     Allow NULL fields: 'NOT NULL' will be not added in table creation statement.

       -o field[,field[,...]]
              List  fields  to  insert  into  MySQL  database.   Primary use is to ease import of
              complex dbf files where we want only few fields.   NOTE:  -o  is  processed  before
              substitution (-s), so you have to use dbf field names here.

       -e conversion-file
              Specify  file  for  CHAR  fields  conversion.   File format is: 1st line: number of
              characters  to  convert  (number  of  lines).   Further  lines:   <char_to_convert>

       -s old-name=new-name[,old-name=new-name[,...]]
              Takes a list of field name/new field name pairs.  Primary use is to avoid conflicts
              between field names and MySQL reserved keywords.  When the new field name is empty,
              the field is skipped in both the CREATE clause and the INSERT clauses, i.e. it will
              not be present in the MySQL table.  For example:


       -i field[,field[,...]]
              List fields to be indexed.  MySQL field names should be used here.

       -d database
              Select the database to insert into.  Default is 'test'.

       -t table
              Select the table to insert into.  Default is 'test'.

       -c[c]  Create table if one doesn't exist already.  If the table already  exists,  drop  it
              and  build  a new one.  The default is to insert all data into the named table.  If
              -cc is specified, no records will be inserted.

       -p  primary
              Select the primary key.  You have to give the exact field name.

       -h host
              Select the host to insert into.  Untested.

       -F     Fixed length records.  (By default CHAR is saved as VARCHAR.)

       -q     dbf2mysql: "Quick" mode.  Inserts data via temporary file using 'LOAD DATA  INFILE'
              MySQL  statement.   This increased insertion speed on my PC 2-2.5 times.  Also note
              that during whole 'LOAD DATA' affected table is locked.

              mysql2dbf: Specify custom query to use.

       -r     Trim trailing and leading whitespace from CHAR type fields data.

       -x     Start each table with _rec and _timestamp fields.

       -C charset
              Specify the charset to use in table.

       -P password
              Specify password on the MySQL server.

       -U user
              Specify user on the MySQL server.


       mysql2dbf can't write MEMO files at this time.

       Possibly incorrect field lengths for REAL numbers.


       Originally written by Maarten Boekhold <>, Oct 1995.

       Patched for MySQL by Michael Widenius <>, 3 Nov 1996.

       Manual  page  written  for  Debian  GNU/Linux   from   README   by   Heiko   Schlittermann
       <>,  Aug  1997;  updated  by Matej Vela <>, Nov 2001. New
       options available added by Francesco P Lovergine <>, Dec 2020.


       Use this piece of software as you want, modify it to suit your needs, but please leave  my
       name in place ok? :)


       The  authors  do  not  accept  any responsibility for possible damage you get as result of
       using this program.