Wrap an external function as defined in a compiled shared library. More...
Public Member Functions | |
| def | __init__ (self, SQLite3DB db, str library_path, str function_name, str query, str output_table, List[str] outputs, List[str] references) |
| Acquire the db and configure the interface with the compiled function. More... | |
Wrap an external function as defined in a compiled shared library.
Python bindings for SQLamarr::Plugin.
The C function function_name is selected from the shared object library_path and evaluated for each row obtained executing the query on the database db. Results are stored in the temporary table output_table whose columns are named after the list of outputs. The columns returned by the query are all interpreted as inputs to the external functions, unless they are listed as references, in that case they are copied to the output table, easying JOIN operations with other tables in the database.
| def SQLamarr.Plugin.Plugin.__init__ | ( | self, | |
| SQLite3DB | db, | ||
| str | library_path, | ||
| str | function_name, | ||
| str | query, | ||
| str | output_table, | ||
| List[str] | outputs, | ||
| List[str] | references | ||
| ) |
Acquire the db and configure the interface with the compiled function.
@param db: An open database connection; @param library_path: path-like string defining the library defining the function to execute; @param function_name: string defining the name of the function to execute; @param query: SQL query defining the input and reference columns; @param output_table: name of the table where reference and output are stored; @param outputs: list of the output column names for further reference; @param references: list of columns selected by `query` to be used as reference indices instead of passing as inputs to the external function.