snow stage execute¶
Exécutez immédiatement tous les fichiers du chemin de la zone de préparation. Les fichiers peuvent être filtrés avec un modèle de type glob, par exemple @stage/*.sql
, @stage/dev/*
. Seuls les fichiers portant l’extension .sql
seront exécutés.
Syntaxe¶
snow stage execute
<stage_path>
--on-error <on_error>
--variable <variables>
--connection <connection>
--host <host>
--port <port>
--account <account>
--user <user>
--password <password>
--authenticator <authenticator>
--private-key-file <private_key_file>
--token-file-path <token_file_path>
--database <database>
--schema <schema>
--role <role>
--warehouse <warehouse>
--temporary-connection
--mfa-passcode <mfa_passcode>
--enable-diag
--diag-log-path <diag_log_path>
--diag-allowlist-path <diag_allowlist_path>
--format <format>
--verbose
--debug
--silent
Arguments¶
stage_path
Chemin de la zone de préparation avec les fichiers à exécuter. Par exemple
@stage/dev/*
.
Options¶
--on-error [break|continue]
Que faire en cas d’erreur ? La valeur par défaut est break. La valeur par défaut est : break.
--variable, -D TEXT
Variables pour le contexte d’exécution ; par exemple :
-D "<key>=<value>"
. Pour des fichiers SQL, les variables sont utilisées pour développer le modèle, et toute variable inconnue provoquera une erreur (pensez à intégrer des guillemets dans le fichier). Pour les fichiers Python, les variables sont utilisées pour mettre à jour le dictionnaire os.environ. Les clés fournies sont en majuscules pour respecter les meilleures pratiques. En cas de fichiers SQL, les valeurs des chaînes doivent être entre guillemets''
(pensez à intégrer des guillemets dans le fichier).--connection, -c, --environment TEXT
Nom de la connexion, tel que défini dans votre fichier
config.toml
. Défaut :défaut
.--host TEXT
Adresse de l’hôte pour la connexion. Remplace la valeur spécifiée pour la connexion.
--port INTEGER
Port pour la connexion. Remplace la valeur spécifiée pour la connexion.
--account, --accountname TEXT
Nom attribué à votre compte Snowflake. Remplace la valeur spécifiée pour la connexion.
--user, --username TEXT
Nom d’utilisateur pour se connecter à Snowflake. Remplace la valeur spécifiée pour la connexion.
--password TEXT
Mot de passe Snowflake. Remplace la valeur spécifiée pour la connexion.
--authenticator TEXT
Authentificateur Snowflake. Remplace la valeur spécifiée pour la connexion.
--private-key-file, --private-key-path TEXT
Chemin du fichier de clé privée Snowflake. Remplace la valeur spécifiée pour la connexion.
--token-file-path TEXT
Chemin vers un fichier avec un jeton OAuth qui doit être utilisé lors de la connexion à Snowflake.
--database, --dbname TEXT
Base de données à utiliser. Remplace la valeur spécifiée pour la connexion.
--schema, --schemaname TEXT
Schéma de la base de données à utiliser. Remplace la valeur spécifiée pour la connexion.
--role, --rolename TEXT
Rôle à utiliser. Remplace la valeur spécifiée pour la connexion.
--warehouse TEXT
Entrepôt à utiliser. Remplace la valeur spécifiée pour la connexion.
--temporary-connection, -x
Utilise la connexion définie avec les paramètres de la ligne de commande, au lieu de celle définie dans la configuration. Par défaut : false.
--mfa-passcode TEXT
Jeton à utiliser pour l’authentification multifactorielle (MFA)
--enable-diag
Exécutez le test de diagnostic du Python Connector. Par défaut : false.
--diag-log-path TEXT
Chemin d’accès au rapport de diagnostic. Par défaut : <temporary_directory>.
--diag-allowlist-path TEXT
Chemin d’accès au rapport de diagnostic vers la liste d’autorisations facultative.
--format [TABLE|JSON]
Spécifie le format de sortie. Par défaut : TABLE.
--verbose, -v
Affiche les entrées de journal pour les niveaux de journalisation
info
et supérieurs. Par défaut : false.--debug
Affiche les entrées de journal pour les niveaux de journalisation
debug
et supérieurs ; les journaux de débogage contiennent des informations supplémentaires. Par défaut : false.--silent
Désactive la sortie intermédiaire vers la console. Par défaut : false.
--help
Affiche le texte d’aide de cette commande.
Notes sur l’utilisation¶
La commande recherche les fichiers ayant une extension
.sql
dans le répertoireSTAGE_PATH
spécifié et exécuteEXECUTE IMMEDIATE
sur chacun d’entre eux.STAGE_PATH
peut être :Uniquement un nom de zone de préparation, tel que
@scripts
, qui exécute tous les fichiers.sql
de la zone de préparation.Modèle de type global, tel que
@scripts/dir/*
, qui exécute les fichiers.sql
à partir du répertoiredir
.Chemin d’accès direct au fichier, tel que
@scripts/script.sql
, qui exécute uniquement le fichierscript.sql
à partir du fichierscripts
.
Les options --silent
permettent de masquer les messages intermédiaires avec les résultats de l’exécution du fichier.
Lorsque vous utilisez des modèles Jinja pour les fichiers SQL, vous pouvez transmettre des variables de modèle en utilisant l’option -D
(ou --variable
), comme -D "<clé>=<valeur>"
. Les valeurs des chaînes doivent être placées entre guillemets simples (''
).
Exemples¶
Spécifiez uniquement un nom de zone de préparation pour exécuter tous les fichiers
.sql
de cette zone de préparation :snow stage execute "@scripts"
SUCCESS - scripts/script1.sql SUCCESS - scripts/script2.sql SUCCESS - scripts/dir/script.sql +------------------------------------------+ | File | Status | Error | |------------------------+---------+-------| | scripts/script1.sql | SUCCESS | None | | scripts/script2.sql | SUCCESS | None | | scripts/dir/script.sql | SUCCESS | None | +------------------------------------------+
Spécifiez un modèle de type global pour exécuter tous les fichiers
.sql
dans le répertoiredir
:snow stage execute "@scripts/dir/*"
SUCCESS - scripts/dir/script.sql +------------------------------------------+ | File | Status | Error | |------------------------+---------+-------| | scripts/dir/script.sql | SUCCESS | None | +------------------------------------------+
Spécifiez un modèle de type glob pour exécuter uniquement les fichiers
.sql
du répertoiredir
qui commencent par « script », suivi d’un caractère :snow stage execute "@scripts/script?.sql"
SUCCESS - scripts/script1.sql SUCCESS - scripts/script2.sql +---------------------------------------+ | File | Status | Error | |---------------------+---------+-------| | scripts/script1.sql | SUCCESS | None | | scripts/script2.sql | SUCCESS | None | +---------------------------------------+
Spécifiez un chemin d’accès direct au fichier avec l’option
--silent
:snow stage execute "@scripts/script1.sql" --silent
+---------------------------------------+ | File | Status | Error | |---------------------+---------+-------| | scripts/script1.sql | SUCCESS | None | +---------------------------------------+