Introduction à l’API SQL

L’API SQL de Snowflake est une API REST que vous pouvez utiliser pour accéder aux données d’une base de données Snowflake et les mettre à jour. Vous pouvez utiliser cette API pour développer des applications personnalisées et des intégrations qui :

  • Exécutent des requêtes.

  • Gérer votre déploiement (par exemple, fournir des utilisateurs et des rôles, créer des tables, etc.)

Dans ce chapitre :

Capacités de l’API SQL

L’API SQL de Snowflake fournit des opérations que vous pouvez utiliser pour :

  • Soumettre des instructions SQL pour exécution.

  • Vérifier le statut d’exécution d’une instruction.

  • Annuler l’exécution d’une instruction.

  • Récupérer les résultats des requêtes de manière simultanée.

Vous pouvez utiliser cette API pour exécuter des requêtes standard et la plupart des instructions DDL et DML. Voir Limitations de l’API SQL pour connaître les types d’instructions qui ne sont pas pris en charge.

Pour les requêtes, l’API SQL renvoie les données dans des partitions. Snowflake détermine le nombre de partitions retournées et la taille de chaque partition.

Le point de terminaison pour l’API SQL (/api/v2/statements) est protégé par les politiques de réseau qui restreignent l’accès au compte où l’API est activée.

Note

Le paramètre AUTOCOMMIT doit être défini sur TRUE par niveau de requête ou d’instruction, quelle que soit la valeur définie au niveau de l’utilisateur ou du compte.

Limitations de l’API SQL

L’API SQL a les limitations suivantes :

  • Les commandes suivantes ne sont pas prises en charge :

    • La commande PUT (dans Snowflake SQL)

    • La commande GET (dans Snowflake SQL)

Les commandes et instructions suivantes sont prises en charge uniquement dans le cadre d’une requête qui spécifie plusieurs instructions :

  • Les commandes qui effectuent des transactions explicites, notamment :

  • Les commandes qui modifient le contexte de la session, notamment :

  • Les instructions qui définissent les variables de session.

  • Les instructions qui créent des tables et des zones de préparation temporaires (tables et zones de préparation qui ne sont disponibles que dans la session actuelle).

L’API SQL ne prend pas actuellement en charge les procédures stockées Python.

Considérations relatives à la facturation lors de l’utilisation de l’API SQL

L’API SQL exploite la couche de services Cloud lors de la récupération de certains résultats de requêtes. Pour plus d’informations sur les services Cloud, voir Utilisation du crédit des services Cloud.