snowshu.adapters.base_sql_adapter

class snowshu.adapters.base_sql_adapter.BaseSQLAdapter(preserve_case: bool = False)

Bases: object

DEFAULT_CASE = 'lower'
build_catalog(patterns: Iterable[dict], thread_workers: int, flags: re.RegexFlag = 0) → Set[snowshu.core.models.relation.Relation]

This function is expected to return all of the relations that satisfy the filters

Parameters
  • patterns (Iterable[dict]) – Filter dictionaries to apply to the databases requires “database”, “schema”, and “name” keys

  • thread_workers (int) – The number of workers to use when building the catalog

  • flags (re.RegexFlag) – regex flag, by default flags=0(no flags are defined)

Returns

All of the relations from the sql adapter pass the filters

Return type

Set[Relation]

property credentials
get_connection(database_override: Optional[str] = None, schema_override: Optional[str] = None) → sqlalchemy.engine.base.Engine

Creates a connection engine without transactions.

By default uses the instance credentials unless database or schema override are provided.

static quoted(val: str) → str
quoted_dot_notation(rel: snowshu.core.models.relation.Relation) → str