MDBTools(1)
NAME
mdb-sql - SQL interface to MDB Tools
SYNOPSIS
mdb-sql [-HFp] [-d <delimiter>] [-i <file>] [-o <file>] [<database>]
DESCRIPTION
mdb-sql is a utility program distributed with MDB Tools.
mdb-sql allows querying of an MDB database using a limited SQL subset
language.
OPTIONS
-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 contain
- ing 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.
COMMANDS
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.
- disconnect
- 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.
- list tables
- The list tables command will display a list of available tables in this database, similar to the mdb-tables utility on the command line.
- describe table <table>
- Will display the column information for the specified table.
- quit Will exit the tool.
SQL LANGUAGE
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:
- SELECT [* | <column list>] FROM <table> WHERE <where clause>
- column list:
- <column> [, <column list>]
- where clause:
- <column> <operator> <literal> [AND <where clause>]
- operator:
- =, =>, =<, <>, like, <, >
- literal:
- integers, floating point numbers, or string literal in single quotes
NOTES
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.
HISTORY
mdb-sql first appeared in MDB Tools 0.3
AUTHORS
The mdb-sql utility was written by Brian Bruns
BUGS
- The supported SQL syntax is a very limited subset and deficient in several ways.