snowflake.core.procedure.ProcedureCollection¶
- class snowflake.core.procedure.ProcedureCollection(schema: SchemaResource)¶
Bases:
ProcedureCollectionBase
Represents the collection operations on the Snowflake Procedure resource.
With this collection, you can create, iterate through, and fetch procedures that you have access to in the current context.
Examples
Creating a procedure instance:
>>> procedure = Procedure( ... name="sql_proc_table_func", ... arguments=[Argument(name="id", datatype="VARCHAR")], ... return_type=ReturnTable( ... column_list=[ ... ColumnType(name="id", datatype="NUMBER"), ... ColumnType(name="price", datatype="NUMBER"), ... ] ... ), ... language_config=SQLFunction(), ... body=" ... DECLARE ... res RESULTSET DEFAULT (SELECT * FROM invoices WHERE id = :id); ... BEGIN ... RETURN TABLE(res); ... END; ... ", ... ) >>> procedures = root.databases["my_db"].schemas["my_schema"].procedures >>> procedures.create(procedure)
Attributes
- database¶
The DatabaseResource this collection belongs to.
- root¶
The Root object this collection belongs to.
Methods
- create(procedure: Procedure, mode: CreateMode | str | None = None, copy_grants: bool | None = None) ProcedureResource ¶
Create a procedure.
- Parameters:
procedure (Procedure) – (required)
mode (Union[CreateMode, str]) – Parameter allowing support for different modes of resource creation. Possible values include: - errorIfExists: Throws an error if you try to create a resource that already exists. - orReplace: Automatically replaces the existing resource with the current one. - ifNotExists: Creates a new resource when an alter is requested for a non-existent resource.
copy_grants (bool) – Parameter to enable copy grants when creating the object.
- create_async(procedure: Procedure, mode: CreateMode | str | None = None, copy_grants: bool | None = None) PollingOperation[ProcedureResource] ¶
An asynchronous version of
create()
.Refer to
PollingOperation
for more information on asynchronous execution and the return type.
- items() ItemsView[str, T] ¶
- iter(*, like: str | None = None) Iterator[Procedure] ¶
List procedures.
- Parameters:
like (str) – Parameter to filter the command output by resource name. Uses case-insensitive pattern matching, with support for SQL wildcard characters.
- iter_async(*, like: str | None = None) PollingOperation[Iterator[Procedure]] ¶
An asynchronous version of
iter()
.Refer to
PollingOperation
for more information on asynchronous execution and the return type.
- keys() KeysView[str] ¶
- update_reference(old_name: str, new_name: str, resource: T) None ¶
Update the collection with a new item.
- values() ValuesView[T] ¶