Provided by: opendbx-utils_1.4.6-13build4_amd64 bug


       odbx-sql - Swiss army knife for communicating with databases and interactive SQL shell


       odbx-sql [-?] [-b backend] [-c configfile] [-d database] [-f delimiter] [-h host] [-i] [-k
                keywordfile] [-p port] [-s separator] [-u username] [-w]


       odbx-sql is a small and flexible utiltiy to communicate with the  databases  supported  by
       the OpenDBX library. In batch mode, it's main purpose is automating tasks in shell scripts
       which require working with databases. On the other side, the interactive mode  provides  a
       convenient  SQL  shell for modifying database content or testing statements. The format of
       the output can be controlled to some extend by defining  strings  for  separation  between
       columns and for delimiting field values.


       -h, --help
              Print help including a short description of available options.

       -b, --backend=name
              Name  of the database backend that should be used or path to the backend library of
              the OpenDBX driver.

       -c, --config=configfile
              Configuration file with parameters required for connecting  to  the  database.  The
              file  can  include  values for the backend that should be used, the host name or ip
              address (and maybe the port if required),  the  database  name  and  the  user  and
              password.  These  values should be placed into the configuration file to be able to
              access them from non-interactive program execution  savely  without  revealing  the
              password  anywhere. A full example of such a configuration file can be found in the
              example section of this manual.

       -d, --database=name
              Name of the database on the server or path to the database file in the  local  file

       -f, --delimiter=character
              Single  character or string that should surround field values which are returned by
              SELECT-like statements and printed to stdout.

       -h, --host=name
              Host name, IP address or path to the database file. It can also be the  path  to  a
              named pipe in order to communicate to the database server only locally.

       -i, --interactive
              Run  in  interactive mode and provide a convenient SQL shell contrary to batch mode
              which is waiting for input from stdin and printing results to stdout.

       -k keywordfile
              Location of a keyword file used for providing auto-completion of keywords.

       -p, --port=port
              TCP/IP port name or number the database server is listening to. If  this  parameter
              isn't  added  at  the  command line, most database client libraries use the default
              value. Many but not all database server can resolve the port number from  its  name
              and for a maximum of portability the parameter value should be the port number.

       -s separator
              Single  character or string that should separate field values which are returned by
              SELECT-like statements and printed to stdout.

       -u, --username=name
              Name of the user which is sent to the database server for authentication.

       -w, --password
              Prompt for a password at the command line.


       Configuration file

        backend = mysql
        host = localhost
        port = 3306
        database = test
        username = myuser
        password = secret

       Starting in interactive mode

       odbx-sql -c mysql.conf -i

       Executing commands in batch mode

       cat stmt.sql | odbx-sql -c mysql.conf


       odbx-sql returns 1 if an error occured and 0 if all commands succeeded  or  only  warnings
       are reported. If warnings occur, they are written to stderr.

                                          24 March 2020                               odbx-sql(1)