Dadbod is a Vim plugin for interacting with databases. It’s a more modern take on dbext.vim, improving on it on the following ways:
- Connections are specified with a single URL, rather than prompting you for 14 separate variables
- All interaction is through invoking
:DB
, not 53 different commands and 35 different maps (omitting many of the more esoteric features, of course) - Supports a modern array of backends, including NoSQL databases:
- ClickHouse
- Impala
- jq
- MongoDB
- MySQL
- Oracle
- osquery
- PostgreSQL
- Presto
- Redis
- SQL Server
- SQLite
- Your own easily implemented adapter
- Easily configurable based on a project directory (as seen in rails.vim, for example), rather than just globally or in a per-file modeline
- For those that just can’t live without some piece of dbext functionality, the option
g:dadbod_manage_dbext
is provided to force dbext to use Dadbod’s default database.
vim-dadbod-ui
vim-dadbod-ui: Simple UI for vim-dadbod. It allows simple navigation through databases and allows saving queries for later use.
Tested on Linux, Mac and Windows, Vim 8.1+ and Neovim.
Features:
- Navigate through multiple databases and it’s tables and schemas
- Several ways to define your connections
- Save queries on single location for later use
- Define custom table helpers
- Bind parameters (see
:help vim-dadbod-ui-bind-parameters
) - Autocompletion with vim-dadbod-completion
- Jump to foreign keys from the dadbod output (see
:help <Plug>(DBUI_JumpToForeignKey)
) - Support for nerd fonts (see
:help g:db_ui_use_nerd_fonts
) - Async query exection (requires using fork branch for now, see #46 (comment))