snowflake.snowpark.DataFrameWriter.saveAsTableΒΆ
- DataFrameWriter.saveAsTable(table_name: Union[str, Iterable[str]], *, mode: Optional[str] = None, column_order: str = 'index', create_temp_table: bool = False, table_type: Literal['', 'temp', 'temporary', 'transient'] = '', statement_params: Optional[Dict[str, str]] = None, block: bool = True) Optional[AsyncJob][source]ΒΆ
Writes the data to the specified table in a Snowflake database.
- Parameters:
table_name β A string or list of strings representing table name. If input is a string, it represents the table name; if input is of type iterable of strings, it represents the fully-qualified object identifier (database name, schema name, and table name).
mode β
One of the following values. When itβs
Noneor not provided, the save mode set bymode()is used.βappendβ: Append data of this DataFrame to the existing table. Creates a table if it does not exist.
βoverwriteβ: Overwrite the existing table.
βerrorifexistsβ: Throw an exception if the table already exists.
βignoreβ: Ignore this operation if the table already exists.
column_order β
When
modeis βappendβ, data will be inserted into the target table by matching column sequence or column name. Default is βindexβ. Whenmodeis not βappendβ, thecolumn_ordermakes no difference.βindexβ: Data will be inserted into the target table by column sequence. βnameβ: Data will be inserted into the target table by matching column names. If the target table has more columns than the source DataFrame, use this one.
create_temp_table β (Deprecated) The to-be-created table will be temporary if this is set to
True.table_type β The table type of table to be created. The supported values are:
temp,temporary, andtransient. An empty string means to create a permanent table. Learn more about table types here.statement_params β Dictionary of statement level parameters to be set while executing this action.
block β A bool value indicating whether this function will wait until the result is available. When it is
False, this function executes the underlying queries of the dataframe asynchronously and returns anAsyncJob.
Examples:
>>> df = session.create_dataframe([[1,2],[3,4]], schema=["a", "b"]) >>> df.write.mode("overwrite").save_as_table("my_table", table_type="temporary") >>> session.table("my_table").collect() [Row(A=1, B=2), Row(A=3, B=4)] >>> df.write.save_as_table("my_table", mode="append", table_type="temporary") >>> session.table("my_table").collect() [Row(A=1, B=2), Row(A=3, B=4), Row(A=1, B=2), Row(A=3, B=4)] >>> df.write.mode("overwrite").save_as_table("my_transient_table", table_type="transient") >>> session.table("my_transient_table").collect() [Row(A=1, B=2), Row(A=3, B=4)]