Source code for snowflake_utilities.create

r"""Submodule create.py includes the following functions:

- **create_warehouse** - creates a warehouse in Snowflake if it does not already exist

- **create_database** - creates a database in Snowflake if it does not already exist

- **create_schema** - creates a schema in Snowflake if it does not already exist

"""


import snowflake.connector
from .utils import get_snowflake_connection


[docs]def create_warehouse( conn: snowflake.connector.connection.SnowflakeConnection = get_snowflake_connection(), warehouse_name: str = "tiny_warehouse_mg", ): """ Creates a warehouse in Snowflake if it does not already exist. Parameters ---------- conn : snowflake.connector.connection.SnowflakeConnection A connection to Snowflake warehouse_name : str The name of the warehouse to create Returns ------- None : None """ cs = conn.cursor() _ = cs.execute(f"CREATE WAREHOUSE IF NOT EXISTS {warehouse_name}") cs.close()
[docs]def create_database( conn: snowflake.connector.connection.SnowflakeConnection = get_snowflake_connection(), database_name: str = "mydb", ): """ Creates a database in Snowflake if it does not already exist. Parameters ---------- conn : snowflake.connector.connection.SnowflakeConnection A connection to Snowflake database_name : str The name of the database to create Returns ------- None : None """ cs = conn.cursor() _ = cs.execute(f"CREATE DATABASE IF NOT EXISTS {database_name}") cs.close()
[docs]def create_schema( conn: snowflake.connector.connection.SnowflakeConnection = get_snowflake_connection(), schema_name: str = "myschema", ): """ Creates a schema in Snowflake if it does not already exist. Parameters ---------- conn : snowflake.connector.connection.SnowflakeConnection A connection to Snowflake schema_name : str The name of the schema to create Returns ------- None : None """ cs = conn.cursor() _ = cs.execute(f"CREATE SCHEMA IF NOT EXISTS {schema_name}") cs.close()