mdb-sql - SQL interface to MDB Tools
mdb-sql [-HFp] [-d <delimiter>] [-i <file>] [-o <file>] [<database>]
mdb-sql is a utility program distributed with MDB Tools.
mdb-sql allows querying of an MDB database using a limited SQL subset
-H Supress header row.
-F Supress footer row.
-p Turn off pretty printing. By default results are printed in an
ascii table format which looks nice but is not conducive to
manipulating the output with unix tools. This option prints
output plainly in a tab separated format.
-d Specify an alternative column delimiter. If no delimiter is
specified, columns will be delimited by a tab character if
pretty printing (-p) is turned off. If pretty printing is
enabled this option is meaningless.
-i Specify an input file. This option allows an input file
containing the SQL to be passed to mdb-sql. See Notes.
-o Specify an output file. This option allows the name of an output
file to be used instead of stdout.
mdb-sql in interactive mode takes some special commands.
connect to <database>
If no database was specified on the command line this command is
necessary before any querys are issued. It also allows the
switching of databases once in the tool.
Will disconnect from the current database.
go Each batch is sent to the parser using the ’go’ command.
reset A batch can be cleared using the ’reset’ command.
The list tables command will display a list of available tables
in this database, similar to the mdb-tables utility on the
describe table <table>
Will display the column information for the specified table.
quit Will exit the tool.
The currently implemented SQL subset is quite small, supporting only
single table queries, no aggregates, and limited support for WHERE
clauses. Here is a brief synopsis of the supported language.
SELECT [* | <column list>] FROM <table> WHERE <where clause>
<column> [, <column list>]
<column> <operator> <literal> [AND <where clause>]
=, =>, =<, <>, like, <, >
integers, floating point numbers, or string literal in single
When passing a file (-i) or piping output to mdb-sql the final ’go’ is
optional. This allow constructs like
echo "Select * from Table1" | mdb-sql mydb.mdb
to work correctly.
The -i command can be passed the string ’stdin’ to test entering text
as if using a pipe.
mdb-sql first appeared in MDB Tools 0.3
The mdb-sql utility was written by Brian Bruns
The supported SQL syntax is a very limited subset and deficient in