Pgcli is a command line interface for Postgres database that does auto-completion and syntax highlighting. You can install this version by:
$ pip install -U pgcli
Check detailed instructions if you're having difficulty.
This version adds support for \\h command and \x auto command. Two very important commands that bring us close to being a total replacement for psql. This version can also handle really large databases without trouble thanks to asynchronous completion refresh. Full details below:
Features:
Perform auto-completion refresh in background. (Thanks: Amjith, Darik Gamble, Iryna Cherniavska).
When the auto-completion entries are refreshed, the update now happens in a background thread. This means large databases with thousands of tables are handled without blocking.
Add support for \h command. (Thanks: Stuart Quin).
This is a huge deal. Users can now get help on an SQL command by typing: \h COMMAND_NAME in the pgcli prompt.
Add support for \x auto. (Thanks: Stuart Quin).
\\x auto will automatically switch to expanded mode if the output is wider than the display window.
Don't hide functions from pg_catalog. (Thanks: Darik Gamble).
Suggest set-returning functions as tables. (Thanks: Darik Gamble).
Functions that return table like results will now be suggested in places of tables.
Suggest fields from functions used as tables. (Thanks: Darik Gamble).
Using pgspecial as a separate module. (Thanks: Iryna Cherniavska).
Make "enter" key behave as "tab" key when the completion menu is displayed. (Thanks: Matheus Rosa).
Support different error-handling options when running multiple queries. (Thanks: Darik Gamble).
When on_error = STOP in the config file, pgcli will abort execution if one of the queries results in an error.
Hide the password displayed in the process name in ps. (Thanks: Stuart Quin)
Add CONCURRENTLY to keyword completion. (Thanks: Johannes Hoff).
Bug Fixes:
- Fix the ordering bug in \d+ display, this bug was displaying the wrong table name in the reference. (Thanks: Tamas Boros).
- Only show expanded layout if valid list of headers provided. (Thanks: Stuart Quin).
- Fix suggestions in compound join clauses. (Thanks: Darik Gamble).
- Fix completion refresh in multiple query scenario. (Thanks: Darik Gamble).
- Fix the broken timing information.
- Fix the removal of whitespaces in the output. (Thanks: Jacek Wielemborek)
- Fix PyPI badge. (Thanks: Artur Dryomov).
Improvements:
- Move config file to ~/.config/pgcli/config instead of ~/.pgclirc (Thanks: inkn).
- Move literal definitions to standalone JSON files. (Thanks: Darik Gamble).
Internal Changes:
- Improvements to integration tests to make it more robust. (Thanks: Iryna Cherniavska).