mxcl/homebrew — pull request #14831 by volker (2012-09-10 11:02:57+00:00)
Title: New Formula: henplus

HenPlus is a SQL shell that can handle multiple open sessions in parallel. The commandline interface provides the usual history functions features and TAB-completion for commands, tables and columns.

HenPlus is a SQL shell written in Java that works for any database that offers JDBC support. So basically any database. Why do we need this ? Any database comes with some shell, but all of them have missing features (and several shells are simply unusable). And if you work with several databases at once (if you are a developer, then you do this all the time), switching between these tools is tedious.

This is where HenPlus steps in. It supports:

- Any JDBC aware database.

- Has context sensitive command line completion for commands and tables / columns / variables within SQL-commands.

- Multiple open connection-sessions can be handled in parallel. You can just switch between them. So you can be connected to different databases to experiment with the same statement in all of them, for example.

- All JDBC-Urls of opened sessions are stored for later command line completion in the connect command.

- Command line history just like in the bash (with cursor-up/down, CTRL-R, ...)

- A describe command for database tables, that work all JDBC-Drivers that unveil the appropriate MetaData (Oracle, PostgreSQL, MySQL, DB2...).

- Supports variables that are expanded like shell variables with $VARIABLENAME or ${VARIABLENAME} (with completion of their names, just like in bash.

- Loading files.

- Supports several built-in commands (start, @, @@, spool) and syntax from the Oracle SQL-plus utility (like the single '/' on a line to close a statement). Most Oracle SQL-plus scripts will run directly, so its simple to switch to HenPlus. Except if you can't stand, that your life will become much simpler, then ;-) If you have problems running your old scripts, please let us know.

- Allows a per-project storage of the commandline history, variables, plugins and connections.

- Allows to add your own plugins that behave just like the built-in commands.

Homepage: https://github.com/neurolabs/henplus