dbishell is a database client built on top of the Perl DBI: as
such, it supports [or at least, I hope it does] every database
supported by the Perl DBI/DBD layers: As of this date, it offers
the following:
- Context sensetive tab completion
- Command history [per database driver]
- 'describe' syntax, incl. for DB engines that don't offer this as a
built-in (and transparent access via the same syntax for those
engines which do)
- input output [data] and error [info] streams can be logged to files
- dbishell provides variables [you can turn these off]
- subshells and shell commands
- get and set environment variables
- get and set DBI connect attributes [AutoCommit, LongTruncOk etc]
- Some control over the output format
- Oracle, MySQL and Sybase specific drivers
- A generic 'default' driver that provides basic functionality
for pretty much any DB engine
- Ability to execute scripts stored in files
- Syntax for binding 'out' variables for SQL procedures
[ Probably only works for Oracle, and maybe DB2 at this point ]
- Init scripts. (read at connect time)
- SQL Server driver [sort of]
[still a bit funky wrt ODBC/TDS/stored procs/inout parameter handling
incompatibilities. You'll have to provide your own chicken, candles and
pentagram, and make the appropriate sacrifices to ODBC, the black goat
of the networks, with a thousand incompatibilities, the render of souls,
the breaker of specifications, to get this working. The point I am trying
to get across here is: You Are On Your Own with this one. I've fought it
to a standstill once, but I don't have the energy or the will to face it
again]
- Paging of output [uses less by default, but you can specify
some other pager if you like]
- Edit multi-line commands in an external editor:
seems to work reasonably well w. emacsclient
- Help on SQL syntax and functions [needs more work]
|