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から直接インストールするには、次を実行します。
.vsixファイルからのインストール¶
.vsix ファイルからダウンロードしてインストールするには、次を実行します。
拡張機能をダウンロードします。
Snowflake Visual Studio Code拡張機能 のページを開きます。
Version History タブを選択します。
ダウンロードするバージョンを選択し、 Download をクリックします。ファイルがダウンロードされた場所に注意してください。
Visual Studio Codeを開きます。
Code » Preferences » Extensions を選択します。
詳細(...)メニューから Install from VSIX を選択します。
自分のコンピューターで
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にサインインするには、次を実行します。
Activity Bar で、Snowflakeアイコンをクリックします。
サイドバーパネルがSnowflakeナビゲーションに変わり、 Add Account または Sign in ダイアログが表示されます。
Add Account で、アカウント識別子を入力して Continue を選択します。
Add Account は、アカウントが以前に指定されていない場合にのみ表示されます。
選択したアカウントのユーザー名とパスワードを入力し、 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 を構成するには、次を実行します。
Activity Bar で、Snowflakeアイコンを選択します。
サイドバーパネルがSnowflakeナビゲーションに変わり、 Add Account または Sign in ダイアログが表示されます。
Username ドロップダウンを選択し、次に Sign in to another account を選択します。
Use SnowSQL Config を選択します。 Snowflake Extension for Visual Studio Code のVisual Studioコード設定ページが開き、 SnowSQL Config Path が選択された状態になります。
有効な SnowSQL 構成ファイルへのパスを入力します。
アカウントドロップダウンが更新され、指定された構成ファイルで定義されているすべての接続が含まれます。
SQL ファイルの操作¶
Snowflake Extension for Visual Studio Code を使用して、 SQL を作成し、ロードすることができます。SQL ファイルは、1つ以上の SQL ステートメントを含む単純なテキストファイルです。
SQL ファイルを開く¶
Snowflake SQL ファイルを作成または開くには、次を実行します。
コマンドまたはクエリの実行¶
1つ以上のコマンドまたはクエリを実行するには、次を実行します。
実行するステートメントにカーソルを置いて、実行する行を選択します。
2つ以上のコマンドを選択すると、選択したすべてのコマンドが実行されます。
選択した最初のコマンドの上にある [実行] ボタンを押します。
複数のコマンドを選択すると、コマンドは上から順に実行されます。
キーボードショートカットを使用してステートメントを実行することもできます。実行する SQL ステートメントを選択したら、Macキーボードでは + [enter]キーを、Windowsキーボードでは + [enter]キーを押します。
Output セクションの SNOWFLAKE:QUERY RESULTS テーブルで、 SQL ステートメントの結果を確認できます。
クエリ履歴の使用¶
クエリ結果は QUERY HISTORY で追跡されます。
以前に実行したクエリ結果を調べるには、次を実行します。
Query History を展開します。
ステートメントを選択します。
Output ペインの SNOWFLAKE:QUERY RESULTS タブで結果を調べます。
クエリ結果の使用¶
クエリ結果は並べ替え、再並べ替え、非表示、凍結、またはディスクへの保存が可能です。
特定のクエリの表示を変更するには、次を実行します。
QUERY HISTORY でクエリを選択します。
QUERY RESULTS で列を選択します。
下矢印(↓)を選択し、 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関数をデバッグするには、次を実行します。
Python関数でSnowflakeストアドプロシージャを記述します。最初のパラメーターはSnowpark
Session
オブジェクトです。関数名の上にインライン Snowflake: Debug オプションが表示されるはずです。このオプションを選択すると、現在のアクティブなセッションを拡張機能で使用して、関数内のストアドプロシージャを実行します。デバッグ用のブレークポイントを設定することもできます。
Pythonでの SQL の構文強調表示とオートコンプリート¶
Pythonコードで SQL の構文強調表示を追加するには、自動検出を有効にするか、コメントを使用して手動で SQL 文字列を示します。
SQL ステートメントの自動検出¶
自動 SQL 構文強調表示を設定するには、 拡張機能の設定 Auto Detect Sql in Python を有効にします。この拡張機能は、次のスクリーンショットに示すように、Python文字列の最初の単語として、すべて大文字の SQL キーワードを探すことで、 SQL ステートメントを自動的に検出します。
SQL ステートメントを手動で示す¶
Python文字列で SQL ステートメントを手動で示すには、次を実行します。
(オプション) 拡張機能の設定 Auto Detect Sql in Python を無効にします。
コメントを使用して、 SQL ステートメントの開始と終了を示します。次のマーカーを自由に組み合わせて使用できます。
開始マーカー:
-–startsql
、-–beginsql
、-–start-sql
、-–begin-sql
終了マーカー:
–-endsql
、–-end-sql
たとえば、次のスクリーンショットは、 --begin-sql
と --end-sql
を使って、 SQL ステートメントを手動で示すコードを表しています。
Python文字列で SQL オートコンプリートを使う¶
Python文字列で SQL ステートメントのオートコンプリートを使用するには、次を実行します。
Pythonファイルで、拡張機能を使ってアクティブなSnowflakeセッションに接続しながら、Python文字列を作成します。
SQL ステートメントの作成を開始し、表示されるオートコンプリートの候補を確認します。
たとえば、 SELECT * FROM db1.public
のようなステートメントを書き始めると、拡張機能から自動的にテーブル名が提案されます。
同様に、テーブルを参照する SELECT ステートメント内で列を入力し始めると、次のスクリーンショットのように、拡張機能から自動的に列名が提案されます。
Jinjaテンプレートの構文強調表示¶
デフォルトでは、次のスクリーンショットに示すように、この拡張機能は、Snowflake SQL で Jinjaテンプレート を作成するための基本的な構文の強調表示とブラケットオートコンプリートを追加します。
セッションコンテキストの変更¶
Side Bar パネルの Account セクションを使用して、ロール、データベース、スキーマ、ウェアハウスを選択できます。関連するドロップダウンを使用して、それぞれを適切に選択します。
拡張機能の詳細を表示する¶
Snowflake SQL Visual Studio Code拡張情報はいつでも表示できます。
拡張機能に関する次の詳細を確認できます。
バージョン情報: 現在インストールされている拡張機能のバージョン。
変更ログ: 追加、変更、または更新された機能に関するバージョンごとの情報。
機能の手引き。
さらに、有効/無効ドロップダウンを使用して、拡張機能を無効または有効にすることができます。
拡張情報を表示するには、次を実行します。
Code » Preferences » Extensions を選択します。
Snowflake VS Code SQL 拡張機能を選択します。
View » Extensions を選択するか、 Activities バーの拡張ボタン をクリックすることもできます。
変更ログの表示¶
拡張機能の変更ログを表示するには、 Show Change Log
コマンドを使用することもできます。
次を押して Command Palette を開きます。Macキーボードの場合は CMD+Shift+P。Windowsキーボードの場合は CTRL+Shift+P。
次のコマンドを入力します。
Show Change Log
拡張機能の設定¶
Snowflake Extension for Visual Studio Code は次の設定をサポートしています。
設定 |
説明 |
デフォルト |
---|---|---|
CSV をエクスポート » 区切り文字 |
列の区切り文字を指定します |
コンマ |
CSV をエクスポート » ヘッダー |
エクスポートされた CSV ファイルにヘッダー行を含めます |
有効化 |
CSV をエクスポート » 空の行を含める |
エクスポートされた CSV ファイルに空の行を含めます |
除外 |
CSV をエクスポート » 引用符 |
エクスポートされた CSV ファイル内のすべての値が二重引用符で囲まれます |
有効化 |
クエリをハイライト |
現在の SQL ステートメントで背景をハイライトします |
有効化 |
ステートメントの上に実行を表示する |
各ステートメントの上でクリック可能な実行アクションを有効にします |
有効化 |
Snowsql構成パス |
設定すると、接続構成がこのファイルからロードされます |
設定解除 |
オートコンプリートオブジェクトの詳細 |
オートコンプリートエントリーを選択した後に、Snowflakeオブジェクトの詳細を表示します |
無効化 |
クライアントセッションキープアライブの設定 |
アクティビティに関係なく、接続がアクティブである限り、セッションを無期限にアクティブにしておくかどうかを指定します。有効になっていない場合、4時間操作がないと再度サインインする必要があります。 |
有効化 |
オートコンプリートバリアントキー |
OBJECT/VARIANT キーのオートコンプリート候補を表示します |
無効化 |
オブジェクトエクスプローラー: 検索 |
オブジェクトエクスプローラーで検索を有効にします |
有効化 |
クエリ履歴: アイテム制限 |
履歴に表示されるクエリの最大数を指定します。より多くのクエリを表示すると、パフォーマンスに影響する可能性があります。 |
1000 |
プレビューでの拡張機能設定¶
現在、次の拡張機能設定をプレビューできます。
設定 |
説明 |
デフォルト |
---|---|---|
構文の強調表示: PythonでSqlを自動検出する |
Python文字列の SQL ステートメントの自動構文強調表示を有効にします |
有効化 |
パブリックプレビュー機能を有効にする |
拡張機能のパブリックプレビュー機能を有効にします |
無効化 |
拡張機能の設定を変更する¶
拡張機能の設定を変更するには、
Windows/Linuxでは、 File » Preferences » Settings を選択します。 . macOS では、 Code » Preferences » Settings を選択します。
Search settings テキストボックスに Snowflake と入力します。
ユーザー固有またはワークスペース固有の設定を表示または変更するには、 User または Workspace タブを選択します。
Settings タブを閉じます。
拡張機能のアンインストール¶
拡張機能を無効化またはアンインストールするには、次を実行します。
Code » Preferences » Extensions を選択します
拡張機能を選択します。
右クリックして Disable または Uninstall を選択します。