PythonStoredProcedure
Represents a Python stored procedure in Snowflake, allowing for the execution of Python code within the Snowflake environment.
Examples
Python
procedure = PythonStoredProcedure(
name="some_procedure",
args=[],
returns="STRING",
runtime_version="3.8",
packages=["snowflake-snowpark-python"],
handler="process_data",
as_="def process_data(): return 'Hello, World!'",
comment="A simple procedure",
copy_grants=False,
execute_as="CALLER",
external_access_integrations=None,
imports=None,
null_handling="CALLED_ON_NULL_INPUT",
owner="SYSADMIN",
secure=False
)
YAML
procedures:
- name: some_procedure
args: []
returns: STRING
runtime_version: "3.8"
packages:
- snowflake-snowpark-python
handler: process_data
as_: "def process_data(): return 'Hello, World!'"
comment: "A simple procedure"
copy_grants: false
execute_as: CALLER
external_access_integrations: null
imports: null
null_handling: CALLED_ON_NULL_INPUT
owner: SYSADMIN
secure: false
Fields
name
(str, required) - The name of the procedure.args
(list) - The arguments of the procedure.returns
(DataType) - The data type of the return value.runtime_version
(str, required) - The Python runtime version.packages
(list) - The list of packages required by the procedure.handler
(str, required) - The handler function for the procedure.as_
(str) - The procedure definition.comment
(str) - A comment about the procedure. Defaults to "user-defined procedure".copy_grants
(bool) - Whether to copy grants. Defaults to False.execute_as
(ExecutionRights) - The execution rights. Defaults to ExecutionRights.CALLER.external_access_integrations
(list) - External access integrations if any.imports
(list) - Files to import.null_handling
(NullHandling) - How nulls are handled. Defaults to NullHandling.CALLED_ON_NULL_INPUT.owner
(string or Role) - The owner of the procedure. Defaults to "SYSADMIN".secure
(bool) - Whether the procedure is secure. Defaults to False.
Last updated