SQL API の紹介

Snowflake SQL API は、Snowflakeデータベースのデータにアクセスして更新するために使用できる REST API です。この API を使用して、次のようなカスタムアプリケーションと統合を開発できます。

  • クエリを実行します。

  • 展開を管理します(例: ユーザーとロールのプロビジョニング、テーブルの作成など)。

このトピックの内容:

SQL API の機能

Snowflake SQL API は、使用可能な次の操作を提供します。

  • 実行のための SQL ステートメントを送信します。

  • ステートメントの実行状況を確認します。

  • ステートメントの実行をキャンセルします。

  • クエリ結果を同時にフェッチします。

この API を使用して、 標準クエリ と、ほとんどの DDL および DML ステートメントを実行できます。サポートされていないステートメントの型については、 SQL API の制限 をご参照ください。

クエリの場合、 SQL API はパーティション内のデータを返します。Snowflakeは、返されるパーティションの数と各パーティションのサイズを決定します。

SQL API (/api/v2/statements)のエンドポイントは、 API が有効になっているアカウントへのアクセスを制限する ネットワークポリシー によって保護されています。

注釈

AUTOCOMMIT パラメーターは、ユーザーまたはアカウントレベルで設定された値に関係なく、クエリまたはステートメントレベルごとに TRUE に設定する必要があります。

SQL API の制限

SQL API には、次の制限があります。

  • 次のコマンドはサポートされていません。

    • PUT コマンド(Snowflake SQL 内)

    • GET コマンド(Snowflake SQL 内)

次のコマンドとステートメントは、 複数のステートメントを指定するリクエスト 内でのみサポートされます。

  • 明示的なトランザクションを実行するコマンドには、次が含まれます。

  • セッションのコンテキストを変更するコマンドには、次が含まれます。

  • セッション変数を設定するステートメント。

  • 仮テーブルとステージ(現在のセッションでのみ使用可能なテーブルとステージ)を作成するステートメント。

SQL API は現在、Python ストアドプロシージャ をサポートしていません。

SQL API を使用する際の請求に関する考慮事項

SQL API は、クエリ結果をフェッチするときにクラウドサービスレイヤーを利用します。クラウドサービスの詳細については、 クラウドサービスのクレジット使用状況 をご参照ください。