dbcli / dbcli/litecli

FR: configuration to import custom python functions

Open
#158 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
3.3k
Forks
95
PR merge metrics
No merged PRs in 30d

Description

LiteCLI is built in Python, and the Python bindings for SQLite make it possible to bind custom functions you can then call from SQL, see the [`Connection.create_function()` documentation](https://docs.python.org/3/library/sqlite3.html#sqlite3.Connection.create_function).

I'd love to see litecli support defining your own custom functions for use in SQL queries. This could be in the form of compiling the source code for such a function embedded in the config file, or to support importing functions from Python modules (I'd suggest a `path:callable` syntax, where you [use `importlib` to import `path`](https://stackoverflow.com/q/67631), then get the `callable` name from the imported module to register as a functoin).

Bonus points if you can also register aggregation, window and collation functions!

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.