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
Copy

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épertoire STAGE_PATH spécifié et exécute EXECUTE 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épertoire dir.

    • Chemin d’accès direct au fichier, tel que @scripts/script.sql, qui exécute uniquement le fichier script.sql à partir du fichier scripts.

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"
    
    Copy
    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épertoire dir :

    snow stage execute "@scripts/dir/*"
    
    Copy
    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épertoire dir qui commencent par « script », suivi d’un caractère :

    snow stage execute "@scripts/script?.sql"
    
    Copy
    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
    
    Copy
    +---------------------------------------+
    | File                | Status  | Error |
    |---------------------+---------+-------|
    | scripts/script1.sql | SUCCESS | None  |
    +---------------------------------------+