snowflake.core.dynamic_table.DynamicTable¶

class snowflake.core.dynamic_table.DynamicTable(*, name: Annotated[str, Strict(strict=True)], kind: Annotated[str, Strict(strict=True)] | None = 'PERMANENT', columns: List[DynamicTableColumn] | None = None, target_lag: TargetLag, refresh_mode: Annotated[str, Strict(strict=True)] | None = None, initialize: Annotated[str, Strict(strict=True)] | None = None, warehouse: Annotated[str, Strict(strict=True)], cluster_by: List[Annotated[str, Strict(strict=True)]] | None = None, query: Annotated[str, Strict(strict=True)], data_retention_time_in_days: Annotated[int, Strict(strict=True)] | None = None, max_data_extension_time_in_days: Annotated[int, Strict(strict=True)] | None = None, comment: Annotated[str, Strict(strict=True)] | None = None, created_on: datetime | None = None, database_name: Annotated[str, Strict(strict=True)] | None = None, schema_name: Annotated[str, Strict(strict=True)] | None = None, rows: Annotated[int, Strict(strict=True)] | None = None, bytes: Annotated[int, Strict(strict=True)] | None = None, scheduling_state: Annotated[str, Strict(strict=True)] | None = None, automatic_clustering: Annotated[bool, Strict(strict=True)] | None = None, owner: Annotated[str, Strict(strict=True)] | None = None, owner_role_type: Annotated[str, Strict(strict=True)] | None = None, budget: Annotated[str, Strict(strict=True)] | None = None)¶

Bases: BaseModel

A model object representing the DynamicTable resource.

Constructs an object of type DynamicTable with the provided properties.

Parameters:
  • name (str) – Specifies the name for the dynamic table, must be unique for the schema in which the dynamic table is created

  • target_lag (TargetLag)

  • warehouse (str) – Specifies the name of the warehouse that provides the compute resources for refreshing the dynamic table

  • query (str) – Specifies the query whose results the dynamic table should contain

  • kind (str, default 'PERMANENT') – Specifies the dynamic table type, permanent (default) or transient.

  • columns (List[DynamicTableColumn], optional)

  • refresh_mode (str, optional) – Specifies the refresh type for the dynamic table

  • initialize (str, optional) – Specifies the behavior of the initial refresh of the dynamic table

  • cluster_by (List[str], optional) – Specifies one or more columns or column expressions in the dynamic table as the clustering key

  • data_retention_time_in_days (int, optional) – Specifies the retention period for the dynamic table so that Time Travel actions (SELECT, CLONE) can be performed on historical data in the dynamic table

  • max_data_extension_time_in_days (int, optional) – Specifies the retention period for the dynamic table so that Time Travel actions (SELECT, CLONE) can be performed on historical data in the dynamic table

  • comment (str, optional) – Specifies a comment for the dynamic table.

  • created_on (datetime, optional) – Date and time when the dynamic table was created.

  • database_name (str, optional) – Database in which the dynamic table is stored

  • schema_name (str, optional) – Schema in which the dynamic table is stored

  • rows (int, optional) – Number of rows in the dynamic table.

  • bytes (int, optional) – Number of bytes that will be scanned if the entire table is scanned in a query. Note that this number may be different than the number of actual physical bytes stored on-disk for the table

  • scheduling_state (str, optional) – Scheduling state (RUNNING or SUSPENDED)

  • automatic_clustering (bool, optional) – If Automatic Clustering is enabled for your account, specifies whether it is explicitly enabled or disabled for the dynamic table.

  • owner (str, optional) – Role that owns the table

  • owner_role_type (str, optional) – The type of role that owns the object.

  • budget (str, optional) – Name of the budget if the object is monitored by a budget

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Methods

classmethod from_dict(obj: dict) → DynamicTable¶

Create an instance of DynamicTable from a dict.

classmethod from_json(json_str: str) → DynamicTable¶

Create an instance of DynamicTable from a JSON string.

to_dict(hide_readonly_properties: bool = False) → Dict[str, Any]¶

Returns the dictionary representation of the model using alias.

to_dict_without_readonly_properties() → Dict[str, Any]¶

Return the dictionary representation of the model without readonly properties.

to_json() → str¶

Returns the JSON representation of the model using alias.

to_str() → str¶

Returns the string representation of the model using alias.