Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.activeviam.com/llms.txt

Use this file to discover all available pages before exploring further.

Session.add_external_table(external_table, /, table_name=None, *, columns=frozendict({}), config=None)

Add a table from an external database to the session.
  • Parameters:
    • external_table (ExternalTable *[*ExternalDatabaseConnectionConfigT ]) – The external database table from which to build the session table. Instances of such tables are obtained through an external database connection.
    • table_name (str | None) – The name to give to the table in the session. If None, the name of the external table is used.
    • columns (Mapping [str , str ]) – Mapping from external column names to local column names. If empty, the local columns will share the names of the external columns.
    • config (ExternalTableConfig *[*ExternalDatabaseConnectionConfigT ] | None) – The config to add the external table. Each DirectQuery plugin has its own TableConfig class.
  • Return type: Table

Example

>>> external_database = session.connect_to_external_database(
...     connection_config
... )
>>> external_table = external_database.tables["TUTORIAL", "SALES"]
>>> list(external_table)
['SALE_ID', 'DATE', 'SHOP', 'PRODUCT', 'QUANTITY', 'UNIT_PRICE']
Add the external table, filtering out some columns and renaming the remaining ones:
>>> from atoti_directquery_snowflake import TableConfig
>>> table = session.add_external_table(
...     external_table,
...     columns={
...         "SALE_ID": "Sale ID",
...         "DATE": "Date",
...         "PRODUCT": "Product",
...         "QUANTITY": "Quantity",
...     },
...     config=TableConfig(keys={"Sale ID"}),
...     table_name="sales_renamed",
... )
>>> table.head().sort_index()
              Date Product  Quantity
Sale ID
S0007   2022-02-01   BED_2       1.0
S0008   2022-01-31   BED_2       1.0
S0009   2022-01-31   BED_2       1.0
S0010   2022-01-31   BED_2       3.0
S0019   2022-02-02   HOO_5       1.0