Snowflake Extension for Visual Studio Code

Snowflakeは Visual Studio Code (VS Code)の拡張機能を提供し、SnowflakeユーザーがSnowflake SQL ステートメントを VS Codeで直接記述および実行できるようにします。この拡張機能は Snowpark Python とも統合され、Pythonコードでの SQL のデバッグ、構文の強調表示、オートコンプリート機能を提供します。

拡張機能はパッケージ化された機能であり、多くの場合サードパーティによって提供され、 VS Codeに新しい機能を追加します。

このトピックの内容:

Snowflake Extension for Visual Studio Code のインストール

Snowflakeユーザーは、Visual Studio Marketplaceから VS Code拡張機能を直接インストールするか、 .xsix ファイルとしてパッケージ化された拡張機能をダウンロードしてからインストールできます。

Visual Studio Marketplaceからのインストール

Visual Studio Marketplaceから直接インストールするには、次を実行します。

  1. Visual Studio Codeを開きます。

  2. Code » Preferences » Extensions を選択します。

    View » Extensions を選択するか、 VS Codeアクティビティバーの拡張ボタン 拡張ボタン をクリックすることもできます。

  3. Search Extensions テキストボックスにテキスト Snowflake を入力して、Snowflake Visual Studio拡張機能を検索します。

  4. 拡張機能のセットから、Snowflakeによって作成された拡張機能を選択し、 Install をクリックします。

.vsixファイルからのインストール

.vsix ファイルからダウンロードしてインストールするには、次を実行します。

  1. 拡張機能をダウンロードします。

    1. Snowflake Visual Studio Code拡張機能 のページを開きます。

    2. Version History タブを選択します。

    3. ダウンロードするバージョンを選択し、 Download をクリックします。ファイルがダウンロードされた場所に注意してください。

  2. Visual Studio Codeを開きます。

  3. Code » Preferences » Extensions を選択します。

    View » Extensions を選択するか、アクティビティバーの拡張ボタン 拡張ボタン をクリックすることもできます。

  4. 詳細(...)メニューから Install from VSIX を選択します。

  1. 自分のコンピューターで snowflake-x.y.z.vsix ファイルを見つけ、ファイルを選択してから、 Install を選択します。

インストールが完了すると、 VS Codeの Extensions メニューの INSTALLED セクションに Snowflake Extension for Visual Studio Code が表示されます。

サインイン

SQL ステートメントの実行、またはSnowpark Pythonの機能を使用する前に、Snowflakeアカウントにサインインする必要があります。

Snowflakeアカウント識別子、ユーザー名、およびパスワードを使用するか、 SAML SSO を使用してSnowflakeへのフェデレーション認証を使用して、Snowflakeにサインインできます。

VS Code拡張機能からSnowflakeに初めてサインインするときは、Snowflakeアカウントのアカウント識別子またはSnowflakeへの接続に使用する URL を入力して、アカウントを追加する必要があります。

アカウント識別子を確認する方法の詳細については、 アカウント識別子 をご参照ください。

VS Code拡張機能からSnowflakeにサインインするには、次を実行します。

  1. Activity Bar で、Snowflakeアイコンをクリックします。

    サイドバーパネルがSnowflakeナビゲーションに変わり、 Add Account または Sign in ダイアログが表示されます。

  2. Add Account で、アカウント識別子を入力して Continue を選択します。

    Add Account は、アカウントが以前に指定されていない場合にのみ表示されます。

  1. 選択したアカウントのユーザー名とパスワードを入力し、 Sign in を選択します。

サインインに成功すると、サイドバーが変更され、セッションコンテキスト(ACCOUNT)、デフォルトロールのユーザーの DATABASE EXPLORER、および QUERY HISTORY が表示されます。

SnowSQL 構成ファイルでの Snowflake Extension for Visual Studio Code の使用

Snowflake Extension for Visual Studio Code では、接続構成をロードするために Snow SQL 構成ファイル を使用できます。

注釈

接続構成値のみが使用されます。他の SnowSQL 構成値は無視されます。

Snow SQL 構成ファイルを使用するように Snowflake Extension for Visual Studio Code を構成するには、次を実行します。

  1. Activity Bar で、Snowflakeアイコンを選択します。

    サイドバーパネルがSnowflakeナビゲーションに変わり、 Add Account または Sign in ダイアログが表示されます。

  2. Username ドロップダウンを選択し、次に Sign in to another account を選択します。

  3. Use SnowSQL Config を選択します。 Snowflake Extension for Visual Studio Code のVisual Studioコード設定ページが開き、 SnowSQL Config Path が選択された状態になります。

  4. 有効な SnowSQL 構成ファイルへのパスを入力します。

アカウントドロップダウンが更新され、指定された構成ファイルで定義されているすべての接続が含まれます。

SQL ファイルの操作

Snowflake Extension for Visual Studio Code を使用して、 SQL を作成し、ロードすることができます。SQL ファイルは、1つ以上の SQL ステートメントを含む単純なテキストファイルです。

SQL ファイルを開く

Snowflake SQL ファイルを作成または開くには、次を実行します。

  1. File » Open を選択し、 SQL を含むテキストファイルに移動して開きます。

    既存の SQL ファイルがない場合は、新しいファイルを作成できます。 File » New File を選択し、型 Snowflake SQL File のファイルを作成します。または、データベースエクスプローラーパネルの(新規 SQL ファイルボタン)ボタンを選択して、新しい SQL ファイルを作成します。

  2. 1つ以上のSnowflake SQL ステートメントをファイルに追加します。

  3. 行を選択し、行の上で [実行] を押してコマンドを実行します。

コマンドまたはクエリの実行

1つ以上のコマンドまたはクエリを実行するには、次を実行します。

  1. 選択した SQL ファイルの すべてのステートメントを実行するボタン を選択して、そのファイル内のすべてのステートメントを実行します。

  2. 実行するステートメントにカーソルを置いて、実行する行を選択します。

    2つ以上のコマンドを選択すると、選択したすべてのコマンドが実行されます。

  3. 選択した最初のコマンドの上にある [実行] ボタンを押します。

複数のコマンドを選択すると、コマンドは上から順に実行されます。

キーボードショートカットを使用してステートメントを実行することもできます。実行する SQL ステートメントを選択したら、Macキーボードでは アップル OSX コマンドキー。 + [enter]キーを、Windowsキーボードでは コントロールキー。 + [enter]キーを押します。

Output セクションの SNOWFLAKE:QUERY RESULTS テーブルで、 SQL ステートメントの結果を確認できます。

Tip

処理中のクエリはキャンセルできます。処理中のクエリをキャンセルするには、 QUERY HISTORY でクエリを見つけて、クエリのキャンセル(クエリのキャンセルボタン)を選択します。

クエリ履歴の使用

クエリ結果は QUERY HISTORY で追跡されます。

以前に実行したクエリ結果を調べるには、次を実行します。

  1. Query History を展開します。

  2. ステートメントを選択します。

  3. Output ペインの SNOWFLAKE:QUERY RESULTS タブで結果を調べます。

Tip

Query History を使用して、クエリを再実行(クエリ再実行ボタン)したり、クエリテキストをクリップボードにコピー(クエリテキストをクリップボードにコピーするボタン)したり、クエリを削除(クエリ削除ボタン)したりすることができます。

クエリ結果の使用

クエリ結果は並べ替え、再並べ替え、非表示、凍結、またはディスクへの保存が可能です。

特定のクエリの表示を変更するには、次を実行します。

  1. QUERY HISTORY でクエリを選択します。

  2. QUERY RESULTS で列を選択します。

  3. 下矢印(↓)を選択し、 SORT A-Z (降順)、 Sort Z-A (昇順)、 Hide column "column name"、または Freeze columns up to "column name" のいずれかを選択します。

コンテンツの表示は適宜変更されます。

Tip

列が以前に非表示になっていた場合は、他の列を選択して Unhide N columns を選択します。

クエリの結果をディスクに保存するには、クエリに関連付けられたディスク(結果をダウンロードするボタン)またはダウンロード(結果を保存するボタン)を選択します。コンテンツは、圧縮済みのgzip、またはコンマ区切りファイルとしてファイルに保存されます。

Snowpark Pythonコードの使用

Snowflake Extension for Visual Studio Code を使用して、Snowpark PythonコードにSnowflakeの SQL ステートメントを記述し、デバッグできます。

Snowpark Python関数のデバッグ

Snowpark Python関数をデバッグするには、次を実行します。

  1. Python関数でSnowflakeストアドプロシージャを記述します。最初のパラメーターはSnowpark Session オブジェクトです。

  2. 関数名の上にインライン Snowflake: Debug オプションが表示されるはずです。このオプションを選択すると、現在のアクティブなセッションを拡張機能で使用して、関数内のストアドプロシージャを実行します。デバッグ用のブレークポイントを設定することもできます。

Pythonでの SQL の構文強調表示とオートコンプリート

Pythonコードで SQL の構文強調表示を追加するには、自動検出を有効にするか、コメントを使用して手動で SQL 文字列を示します。

SQL ステートメントの自動検出

自動 SQL 構文強調表示を設定するには、 拡張機能の設定 Auto Detect Sql in Python を有効にします。この拡張機能は、次のスクリーンショットに示すように、Python文字列の最初の単語として、すべて大文字の SQL キーワードを探すことで、 SQL ステートメントを自動的に検出します。

Python文字列内のSnowflake SQL ステートメントのコードスニペットで、 SQL 構文の強調表示が自動的に表示されます。

SQL ステートメントを手動で示す

Python文字列で SQL ステートメントを手動で示すには、次を実行します。

  1. (オプション) 拡張機能の設定 Auto Detect Sql in Python を無効にします。

  2. コメントを使用して、 SQL ステートメントの開始と終了を示します。次のマーカーを自由に組み合わせて使用できます。

    • 開始マーカー: -–startsql-–beginsql-–start-sql-–begin-sql

    • 終了マーカー: –-endsql–-end-sql

たとえば、次のスクリーンショットは、 --begin-sql--end-sql を使って、 SQL ステートメントを手動で示すコードを表しています。

SQL 構文の強調表示を手動で有効にするコメントを使用した、Python文字列内の Snowflake SQL ステートメントのコードスニペット。

Python文字列で SQL オートコンプリートを使う

Python文字列で SQL ステートメントのオートコンプリートを使用するには、次を実行します。

  1. Pythonファイルで、拡張機能を使ってアクティブなSnowflakeセッションに接続しながら、Python文字列を作成します。

  2. SQL ステートメントの作成を開始し、表示されるオートコンプリートの候補を確認します。

たとえば、 SELECT * FROM db1.public のようなステートメントを書き始めると、拡張機能から自動的にテーブル名が提案されます。

同様に、テーブルを参照する SELECT ステートメント内で列を入力し始めると、次のスクリーンショットのように、拡張機能から自動的に列名が提案されます。

列名のオートコンプリート候補を示すPython文字列内の Snowflake SQL ステートメントのコードスニペット。

Jinjaテンプレートの構文強調表示

デフォルトでは、次のスクリーンショットに示すように、この拡張機能は、Snowflake SQL で Jinjaテンプレート を作成するための基本的な構文の強調表示とブラケットオートコンプリートを追加します。

構文の強調表示とブラケットオートコンプリートを示す、Jinjaテンプレートを使用したSnowflake SQL ステートメントのコードスニペット。

セッションコンテキストの変更

Side Bar パネルの Account セクションを使用して、ロール、データベース、スキーマ、ウェアハウスを選択できます。関連するドロップダウンを使用して、それぞれを適切に選択します。

Tip

アカウントドロップダウンを使用してサインインするか、別のアカウントに切り替えます。

サインイン、またはアカウントの切り替え。

拡張機能の詳細を表示する

Snowflake SQL Visual Studio Code拡張情報はいつでも表示できます。

拡張機能に関する次の詳細を確認できます。

  • バージョン情報: 現在インストールされている拡張機能のバージョン。

  • 変更ログ: 追加、変更、または更新された機能に関するバージョンごとの情報。

  • 機能の手引き。

さらに、有効/無効ドロップダウンを使用して、拡張機能を無効または有効にすることができます。

拡張情報を表示するには、次を実行します。

  1. Code » Preferences » Extensions を選択します。

  2. Snowflake VS Code SQL 拡張機能を選択します。

    View » Extensions を選択するか、 Activities バーの拡張ボタン 拡張ボタン をクリックすることもできます。

変更ログの表示

拡張機能の変更ログを表示するには、 Show Change Log コマンドを使用することもできます。

  1. 次を押して Command Palette を開きます。Macキーボードの場合は CMD+Shift+P。Windowsキーボードの場合は CTRL+Shift+P

  2. 次のコマンドを入力します。

    Show Change Log
    
    Copy

拡張機能の設定

Snowflake Extension for Visual Studio Code は次の設定をサポートしています。

設定

説明

デフォルト

CSV をエクスポート » 区切り文字

列の区切り文字を指定します

コンマ

CSV をエクスポート » ヘッダー

エクスポートされた CSV ファイルにヘッダー行を含めます

有効化

CSV をエクスポート » 空の行を含める

エクスポートされた CSV ファイルに空の行を含めます

除外

CSV をエクスポート » 引用符

エクスポートされた CSV ファイル内のすべての値が二重引用符で囲まれます

有効化

クエリをハイライト

現在の SQL ステートメントで背景をハイライトします

有効化

ステートメントの上に実行を表示する

各ステートメントの上でクリック可能な実行アクションを有効にします

有効化

Snowsql構成パス

設定すると、接続構成がこのファイルからロードされます

設定解除

オートコンプリートオブジェクトの詳細

オートコンプリートエントリーを選択した後に、Snowflakeオブジェクトの詳細を表示します

無効化

クライアントセッションキープアライブの設定

アクティビティに関係なく、接続がアクティブである限り、セッションを無期限にアクティブにしておくかどうかを指定します。有効になっていない場合、4時間操作がないと再度サインインする必要があります。

有効化

オートコンプリートバリアントキー

OBJECT/VARIANT キーのオートコンプリート候補を表示します

無効化

オブジェクトエクスプローラー: 検索

オブジェクトエクスプローラーで検索を有効にします

有効化

クエリ履歴: アイテム制限

履歴に表示されるクエリの最大数を指定します。より多くのクエリを表示すると、パフォーマンスに影響する可能性があります。

1000

プレビューでの拡張機能設定

現在、次の拡張機能設定をプレビューできます。

設定

説明

デフォルト

構文の強調表示: PythonでSqlを自動検出する

Python文字列の SQL ステートメントの自動構文強調表示を有効にします

有効化

パブリックプレビュー機能を有効にする

拡張機能のパブリックプレビュー機能を有効にします

無効化

拡張機能の設定を変更する

拡張機能の設定を変更するには、

  1. Windows/Linuxでは、 File » Preferences » Settings を選択します。 . macOS では、 Code » Preferences » Settings を選択します。

  2. Search settings テキストボックスに Snowflake と入力します。

  3. ユーザー固有またはワークスペース固有の設定を表示または変更するには、 User または Workspace タブを選択します。

  4. Settings タブを閉じます。

拡張機能のアンインストール

拡張機能を無効化またはアンインストールするには、次を実行します。

  1. Code » Preferences » Extensions を選択します

  2. 拡張機能を選択します。

  3. 右クリックして Disable または Uninstall を選択します。