Snowflake Extension for Visual Studio Code

L’extension Visual Studio Code (VS Code) de Snowflake vous permet d’écrire et d’exécuter des instructions SQL Snowflake directement dans VS Code. L’extension s’intègre également à Python Snowpark pour fournir des fonctions de débogage, de coloration syntaxique et de saisie semi-automatique pour SQL dans le code Python.

Vous pouvez installer l’extension VS Code de la marketplace Visual Studio, ou télécharger et installer le fichier .vsix.

Dans ce chapitre :

Installation de l’extension VS Code de la marketplace Visual Studio

  1. Dans VS Code, sélectionnez Code » Settings » Extensions.

  2. Dans le champ Search Extensions in Marketplace, saisissez Snowflake, puis sélectionnez l’extension Snowflake.

    Pour confirmer que vous avez sélectionné la bonne extension, recherchez le badge Snowflake comme illustré dans l’image suivante :

    Le lieu de certification Snowflake. La certification Snowflake est une coche dans un cercle bleu.
  3. Cliquez sur Install.

Installation de l’extension VS Code depuis un fichier .vsix

  1. Téléchargez l’extension :

    1. Allez à https://marketplace.visualstudio.com/items?itemName=snowflake.snowflake-vsc.

    2. Cliquez sur l’onglet Version History.

    3. Cliquez sur Download pour la version VS Code que vous souhaitez installer. Notez l’emplacement de téléchargement du fichier.

  2. Dans VS Code, sélectionnez Code » Settings » Extensions.

  3. Cliquez sur More (…) » Install from VSIX.

  4. Accédez à l’emplacement du fichier snowflake-x.y.z.vsix sur votre ordinateur, sélectionnez le fichier, puis sélectionnez Install.

    Une fois l’installation terminée, l”Snowflake Extension for Visual Studio Code apparaît dans la section INSTALLED du menu Extensions dans VS Code.

Connexion à Snowflake avec l’extension VS Code

Avant de pouvoir exécuter des instructions SQL ou utiliser les fonctions Python Snowpark, vous devez vous connecter à un compte Snowflake.

Pour vous connecter à Snowflake avec l’extension VS Code, vous pouvez :

  • Utiliser votre identificateur de compte Snowflake, votre nom d’utilisateur et votre mot de passe.

  • Utiliser une authentification fédérée comme Security Assertion Markup Language (SAML) ou l’authentification unique (SSO).

  • Utiliser l’authentification par paire de clés.

La première fois que vous utilisez l’extension VS Code pour vous connecter à Snowflake, vous devez saisir l’identificateur pour votre compte Snowflake ou l’URL que vous utilisez pour vous connecter à Snowflake. Pour déterminer votre identificateur de compte, voir Identificateurs de compte.

  1. Cliquez sur l’icône Snowflake dans la barre d’activité de VS Code.

  2. Dans le champ Account Identifier/URL, saisissez l’identificateur de compte de votre compte Snowflake ou l’URL que vous utilisez pour vous connecter à Snowflake, puis cliquez sur Continue.

    Le champ Account Identifier/URL n’est pas disponible si vous avez déjà fourni les informations d’identification de votre compte Snowflake.

  3. Dans la liste Auth Method, sélectionnez l’une des options suivantes :

    1. Sélectionnez Single sign-on pour utiliser vos identifiants de connexion SSO pour vous connecter à Snowflake.

    2. Sélectionnez Username/password pour utiliser votre nom d’utilisateur et votre mot de passe Snowflake pour vous connecter à Snowflake.

    3. Sélectionnez Key Pair pour utiliser votre nom d’utilisateur et votre mot de passe Snowflake pour vous connecter à Snowflake. Pour en savoir plus sur l’authentification par paire de clés, voir Authentification par paire de clés et rotation de paires de clés.

  4. Saisissez vos identifiants puis cliquez sur Sign in.

    Lorsque vous sélectionnez SSO, une page d’authentification distincte s’ouvre après avoir saisi votre nom d’utilisateur et sélectionné Sign in with single sign-on. Saisissez vos identifiants de connexion SSO, puis revenez à VS Code pour terminer la connexion Snowflake.

    Une fois connecté, la barre latérale affiche les informations de votre compte, votre rôle par défaut, l”OBJECT EXPLORER avec une liste Bases de données et votre QUERY HISTORY.

Modification du fichier connections.toml Snowflake

Vous pouvez ajouter et modifier des définitions de connexion dans le fichier de configuration connections.toml Snowflake. Une définition de connexion est un ensemble de paramètres liés à la connexion. Pour plus d’informations sur la connexion à Snowflake avec un fichier TOML, voir Connexion à l’aide du fichier connections.toml.

  1. Dans VS Code, ouvrez l’extension VS Code de Snowflake et connectez-vous à Snowflake.

  2. Cliquez sur Snowflake:Edit Connections File dans le volet ACCOUNT.

    Emplacement du fichier de modification des connexions Snowflake.
  3. Modifiez le fichier TOML.

  4. Fermez le fichier TOML et sélectionnez Save.

Interface de l’extension VS Code

Vue d'ensemble de l'extension VS Code de Snowflake montrant ses principales sections : le panneau de barre latérale, le panneau SQL et le panneau de résultats de la requête.

Le tableau suivant fournit des descriptions des sections fonctionnelles de l’interface de l’extension VS Code.

Élément

Description

1

Panneau de la barre latérale. Contient les volets Compte, Explorateur d’objets et Historique des requêtes. Utilisez ce panneau pour spécifier les détails du compte, examiner les objets de la base de données et les résultats des requêtes.

2

Panneau SQL de Snowflake. Affiche les fichiers SQL de Snowflake

3

Panneau Historique des requêtes. Affiche les requêtes récentes.

4

Panneau Résultats de la requête. Affiche les résultats de la requête. Sélectionnez une requête pour afficher le résultat de son exécution.

5

Session actuelle. Affiche les informations sur la session actuelle, y compris le rôle actuel, la base de données, le schéma et l’entrepôt actif.

Utilisation de l’extension VS Code avec les fichiers de configuration SnowSQL

Le Snowflake Extension for Visual Studio Code peut utiliser les fichiers de configuration Snow SQL pour charger les configurations de connexion.

Note

Seules les valeurs de configuration de la connexion sont utilisées. Les autres valeurs de configuration SnowSQL sont ignorées.

  1. Dans le champ de recherche VS Code, saisissez >user settings, puis sélectionnez Preferences: Open User Settings.

  2. Dans l’onglet User, développez Extensions.

  3. Faites défiler vers le bas et sélectionnez Snowflake.

  4. Dans le volet de droite, faites défiler vers le bas jusqu’à Snowsql Config Path.

  5. Saisissez le chemin d’accès à un fichier de configuration SnowSQL valide.

    Toutes les connexions définies dans la configuration s’affichent dans le panneau Compte.

Utilisation de fichiers SQL

Vous pouvez utiliser l”Snowflake Extension for Visual Studio Code pour créer et charger des fichiers SQL. Les fichiers SQL sont des fichiers texte qui contiennent une ou plusieurs instructions SQL.

Ouverture ou création de fichiers SQL

  1. Dans VS Code, sélectionnez File » Open, accédez à l’emplacement d’un fichier SQL, puis ouvrez-le.

    Pour créer un fichier SQL, sélectionnez File » New File et créez un fichier de type Snowflake SQL File.

  2. Ajoutez une ou plusieurs instructions SQL Snowflake au fichier.

  3. (Facultatif) Cliquez sur Snowflake: Execute All Statements (Bouton Exécuter toutes les instructions) pour exécuter une commande.

Exécution de commandes ou de requêtes

Important

Pour afficher les résultats de la requête Snowflake, l’extension VS Code exécute automatiquement DESC RESULT '<query_id>' en arrière-plan après chaque requête. Ce processus rend LAST_QUERY_ID() inexacte. Pour plus d’informations sur la commande DESCRIBE RESULT et ses paramètres, voir DESCRIBE RESULT.

Dans VS Code, sélectionnez l’une des options suivantes :

  • Pour exécuter toutes les instructions SQL d’un fichier, cliquez sur Snowflake: Execute All Statements (Bouton Exécuter toutes les instructions).

  • Pour exécuter une commande spécifique, placez votre curseur sur l’instruction que vous souhaitez exécuter, puis cliquez sur Execute.

  • Pour exécuter plusieurs commandes, sélectionnez les instructions que vous souhaitez exécuter, puis cliquez sur Execute. Les commandes s’exécutent dans l’ordre, de haut en bas.

Pour utiliser des raccourcis clavier pour exécuter des instructions, sélectionnez les instructions SQL que vous voulez exécuter, appuyez sur Touche de commande OSX Apple. + [entrée] sur un clavier Mac ou Touche de commande générique. + [entrée] sur un clavier Windows.

Les résultats de l’instruction SQL exécutée s’affichent dans le panneau SNOWFLAKE.

Pour annuler les requêtes en cours, sélectionnez une requête dans la liste QUERY HISTORY et cliquez sur Cancel query (Bouton Annuler la requête).

Afficher l’historique des requêtes

  1. Dans VS Code, développez Query History.

  2. Sélectionnez une instruction.

  3. Examinez les résultats dans le panneau SNOWFLAKE.

  4. (Facultatif) Sélectionnez l’un des éléments suivants :

    1. Cliquez sur Snowflake: Copy to Clipboard (Bouton Copier le texte de la requête dans le Presse-papiers) pour copier le texte de la requête dans le presse-papiers.

    2. Cliquez sur Snowflake: Remove Query (Bouton Supprimer la requête) pour supprimer une requête.

Utilisation des résultats d’une requête

Vous pouvez trier, réorganiser, masquer, geler ou enregistrer les résultats de la requête sur le disque.

  1. Dans QUERY HISTORY, sélectionnez une requête.

  2. Dans le panneau SNOWFLAKE, choisissez une colonne.

  3. Sélectionnez la flèche d’extension (↓) puis l’un des éléments suivants : Sort Ascending, Sort Descending, Hide column « column name » ou Freeze columns up to « column name ».

    Si une colonne était précédemment masquée, choisissez n’importe quelle autre colonne et sélectionnez Unhide N columns.

  4. (Facultatif) Sélectionnez l’un des éléments suivants :

    1. Cliquez sur Cloud (Bouton Télécharger les résultats) pour enregistrer les résultats sous forme de fichier gzip compressé.

    2. Cliquez sur Save (Bouton Enregistrer les résultats) pour enregistrer les résultats sous forme de fichier (CSV) avec des valeurs séparées par des virgules.

Utilisation du code Python Snowpark

Vous pouvez utiliser Snowflake Extension for Visual Studio Code pour écrire et déboguer des instructions SQL Snowflake dans le code Python Snowpark.

Débogage des fonctions Python Snowpark

  1. Écrivez une procédure stockée Snowflake dans une fonction Python dans laquelle le premier paramètre est un objet Session Snowpark.

  2. Une option Snowflake: Debug en ligne apparaît au-dessus du nom de la fonction. Sélectionnez cette option pour exécuter la procédure stockée dans la fonction, en utilisant votre session active en cours via l’extension. Vous pouvez également définir des points d’arrêt de débogage.

Détection automatique des instructions SQL

Pour configurer la coloration syntaxique SQL automatique, activez le paramètre d’extension Auto Detect Sql in Python. L’extension détecte automatiquement les instructions SQL en recherchant un mot-clé SQL tout en majuscules comme premier mot d’une chaîne Python, comme le montre l’image suivante.

Extrait de code d'une instruction SQL Snowflake dans une chaîne Python montrant la coloration syntaxique SQL automatique.

Indication manuelle des instructions SQL

  1. (Facultatif) Désactivez le paramètre d’extension Auto Detect Sql in Python.

  2. Utilisez des commentaires pour indiquer le début et la fin d’une instruction SQL. Vous pouvez utiliser n’importe quelle combinaison des marqueurs suivants :

    • Marqueurs de début : -–startsql, -–beginsql, -–start-sql, -–begin-sql

    • Marqueurs de fin : –-endsql, –-end-sql

    L’image suivante montre comment les marqueurs --begin-sql et --end-sql indiquent manuellement une instruction SQL.

Extrait de code d'une instruction SQL Snowflake dans une chaîne Python utilisant des commentaires pour activer manuellement la coloration syntaxique SQL.

Utilisation de la saisie semi-automatique SQL dans des chaînes Python

  1. Dans un fichier Python, créez une chaîne Python alors que vous êtes connecté(e) à une session Snowflake active avec l’extension VS Code.

  2. Écrivez une instruction SQL. Les suggestions par saisie semi-automatique apparaissent.

    Par exemple, lorsque vous commencez à saisir une instruction telle que SELECT * FROM db1.public, l’extension suggère automatiquement des noms de table.

    De même, lorsque vous commencez à remplir des colonnes à l’intérieur d’une instruction SELECT qui fait référence à une table, l’extension suggère automatiquement des noms de colonne, comme le montre l’image suivante.

Extrait de code d'une instruction SQL Snowflake dans une chaîne Python montrant des suggestions de saisie semi-automatique pour des noms de colonne.

Coloration syntaxique des modèles Jinja

Par défaut, l’extension VS Code ajoute une coloration syntaxique de base et une saisie semi-automatique entre parenthèses pour l’écriture des modèles Jinja dans SQL Snowflake, comme le montre l’image suivante.

Extrait de code d'une instruction SQL Snowflake avec un modèle Jinja montrant la coloration syntaxique et la saisie semi-automatique entre parenthèses.

Utilisation du Snowflake Native App Framework

Vous pouvez utiliser l’extension VS Code pour créer et gérer une Snowflake Native App. Pour plus d’informations sur le Snowflake Native App Framework, voir À propos du Native Apps Framework Snowflake.

Créer une Snowflake Native App

  1. Dans VS Code, ouvrez l’extension VS Code de Snowflake et connectez-vous à Snowflake.

  2. Développez le volet NATIVE APP, puis cliquez sur Create new from template.

  3. Sélectionnez l’un des éléments suivants :

    1. Saisissez le nom du dossier dans lequel vous souhaitez créer l”Snowflake Native App, puis appuyez sur Enter.

    2. Appuyez sur Enter pour accepter le répertoire par défaut comme emplacement de l”Snowflake Native App.

  4. Sélectionnez l’un des éléments suivants :

    1. Saisissez l’URL du référentiel GitHub où vos modèles Snowflake Native App sont stockés, puis appuyez sur Enter.

    2. Appuyez sur Enter pour accepter l’URL du référentiel de modèle GitHub Snowflake Native App par défaut.

  5. Sélectionnez l’un des modèles suivants :

    1. Sélectionnez basic pour créer une Snowflake Native App avec un minimum d’exemples de code et de conseils.

    2. Sélectionnez streamlit-python pour créer une Snowflake Native App avec du code d’extension Python et des exemples de code Streamlit.

    3. Sélectionnez streamlit-java pour créer une Snowflake Native App avec du code d’extension Java et des exemples de code Streamlit.

    4. Sélectionnez spcs-basic pour créer une Snowflake Native App avec un code d’extension SPCS et des exemples de code Streamlit.

Déploiement et ouverture d’une Snowflake Native App

Lors de l’utilisation des options Run (deploy and re-install) ou Deploy, le premier fichier snowflake.yml répertorié dans le volet NATIVE APP est utilisé. Lorsque plusieurs fichiers snowflake.yml sont disponibles, une invite apparaît et vous pouvez sélectionner le fichier snowflake.yml que vous souhaitez utiliser pour le déploiement.

Après avoir déployé votre Snowflake Native App, vous pouvez l’ouvrir dans Snowflake pour gérer l’accès, afficher, ajouter et valider les paquets d’applications, afficher les journaux et les événements et modifier les privilèges.

  1. Sélectionnez l’un des éléments suivants :

    1. Dans le volet NATIVE APP de l’extension VS Code, cliquez sur Run (deploy and re-install). Cette option est recommandée si vous avez apporté des modifications importantes et qu’un objet d’application est requis.

    2. Dans le volet NATIVE APP de l’extension VS Code, cliquez sur Deploy. Cette option est recommandée si vous déployez des paquets d’application et des fichiers en zone de préparation et qu’un objet d’application n’est pas requis.

  2. (Facultatif) Cliquez sur l’onglet OUTPUT dans le panneau des résultats de la requête pour afficher la progression du déploiement.

  3. Dans le volet NATIVE APP, cliquez sur Open.

Affichage du statut de l’objet d’application Snowflake Native App

  • Dans le volet NATIVE APP de l’extension VS Code, développez votre application.

    Les objets d’application désinstallés sont bleus.

Activer le mode débogage

Utilisez le mode débogage pour afficher les objets d’application qui ne sont pas visibles pour les consommateurs. Par exemple, des objets de contenu partagé ou des objets non attribués à un rôle de base de données spécifique. Pour plus d’informations sur le mode débogage et son activation par programmation, voir Activer le mode débogage.

  1. Dans le volet NATIVE APP de l’extension VS Code, cliquez sur Debug Mode.

  2. Cliquez sur Enable Debug Mode.

  3. Sélectionnez Enable debug mode for all Native Apps operations.

Suppression d’objets d’application et de paquets Snowflake Native App

Utilisez l’option Teardown pour supprimer l’objet d’application et le paquet définis dans la définition du projet résolu.

  • Dans le volet NATIVE APP de l’extension VS Code, cliquez sur Teardown. Un message de confirmation apparaît lorsque le démontage est terminé.

Modification du contexte de la session

Vous pouvez utiliser la section Account du panneau Side Bar pour sélectionner des rôles, des bases de données, des schémas et des entrepôts. Utilisez la liste déroulante associée pour sélectionner chacun d’entre eux comme il convient.

Utilisez la liste déroulante des comptes pour vous connecter à un compte ou passer d’un compte à l’autre.

Connectez-vous à un compte ou passer d'un compte à un autre.

Gestion du contenu de la zone de préparation

Le Snowflake Extension for Visual Studio Code permet de gérer le contenu de la zone de préparation directement dans l’explorateur d’objets.

Référencement de tous les fichiers d’une zone de préparation

  1. Dans l”OBJECT EXPLORER de VS Code, accédez à une zone de préparation.

  2. Développez la zone de préparation pour voir tous les fichiers en zone de préparation.

Chargement de fichiers du système de fichiers local vers une zone de préparation

Le Snowflake Extension for Visual Studio Code ne prend en charge que le chargement pour les zones de préparation internes, toutes les autres opérations fonctionnent pour les zones de préparation internes et externes.

  1. Dans l”OBJECT EXPLORER de VS Code, accédez à une zone de préparation et cliquez sur Upload (Bouton Charger un fichier).

  2. Saisissez les paramètres facultatifs pour l’opération de chargement. Voir PUT pour obtenir la liste des paramètres optionnels.

  3. Accédez au dossier contenant les fichiers à charger, puis sélectionnez et chargez un ou plusieurs fichiers.

Chargement de fichiers d’une zone de préparation vers un système de fichiers local

  1. Dans l”OBJECT EXPLORER de VS Code, accédez à une zone de préparation.

  2. Cliquez sur Download (Bouton Télécharger les résultats) pour télécharger tous les fichiers, ou développez la zone de préparation.

  3. Sélectionnez et téléchargez un fichier.

  4. Sélectionnez un répertoire pour terminer le téléchargement.

Suppression des fichiers d’une zone de préparation

Voir aussi REMOVE.

  1. Dans l”OBJECT EXPLORER de VS Code, accédez à une zone de préparation.

  2. Sélectionnez un fichier.

  3. Cliquez sur Remove (Bouton Supprimer).

Paramètres de l’extension VS Code

Le tableau suivant répertorie les paramètres Snowflake Extension for Visual Studio Code.

Réglage

Description

Par défaut

Exporter CSV » Délimiteur

Spécifie le délimiteur pour les colonnes

Virgule

Exporter CSV » En-tête

Permettre l’inclusion de la ligne d’en-tête dans le fichier CSV exporté

Activé

Exporter CSV » Inclure les lignes vides

Permettre l’inclusion des lignes vides dans le fichier CSV exporté

Exclure

Exporter CSV » Guillemets

Activer les guillemets doubles autour de toutes les valeurs dans le fichier exporté CSV

Activé

Mettre en évidence la requête

Activer la mise en évidence de l’arrière-plan de l’instruction SQL active

Activé

Afficher Exécuter au-dessus de l’instruction

Activer une action d’exécution cliquable au-dessus de chaque instruction

Activé

Chemin de configuration de Snowsql

Si cette option est activée, la configuration de la connexion sera chargée à partir de ce fichier.

Non défini

Saisie semi-automatique des détails de l’objet

Affichage des détails d’un objet Snowflake après que vous avez sélectionné son entrée par saisie semi-automatique

Désactivé

Activation du maintien en ligne de la session du client

Indique si la session doit rester active indéfiniment tant que la connexion est active, quelle que soit l’activité. Si cette option n’est pas activée, vous devez vous reconnecter au bout de quatre heures d’inactivité.

Activé

Saisie semi-automatique des clés de variante

Affichage des suggestions par saisie semi-automatique des clés OBJECT/VARIANT.

Désactivé

Explorateur d’objets : Recherche

Activation de la recherche dans l’explorateur d’objets

Activé

Historique des requêtes : Limite du nombre d’éléments

Spécifie le nombre maximal de requêtes affichées dans l’historique. L’affichage d’un plus grand nombre de requêtes peut affecter les performances.

1000

Paramètres de prévisualisation de l’extension VS Code

Le tableau suivant répertorie les paramètres de prévisualisation de l’extension VS Code.

Réglage

Description

Par défaut

Coloration syntaxique : Détection automatique du SQL dans Python

Activation de la coloration syntaxique automatique des instructions SQL dans des chaînes Python

Activé

Activation des fonctions en avant-première publique

Activation des fonctions en avant-première publique pour l’extension

Désactivé

Modification des paramètres de l’extension VS Code

  1. Sélectionnez l’un des éléments suivants :

    1. Sous Windows/Linux, sélectionnez File » Preferences » Settings.

    2. Sous (macOS), sélectionnez Code » Settings » Settings.

  2. Dans le champ Search settings, saisissez Snowflake.

  3. Sélectionnez les onglets User ou Workspace pour afficher ou modifier les paramètres spécifiques à l’utilisateur ou à l’espace de travail.

  4. Fermez l’onglet Settings.

Affichage du journal des modifications de l’extension VS Code

  1. Appuyez sur CMD+Maj+P (Mac) ou sur CTRL+Maj+P (Windows).

  2. Saisissez la commande suivante :

    Show Change Log
    
    Copy

Désinstallation de l’extension VS Code

  1. Sélectionnez Code » Settings » Extensions

  2. Sélectionnez l’extension.

  3. Faites un clic droit et sélectionnez Disable ou Uninstall.