# tSnowflakeRow

指定したSnowflakeデータベースに対して記述されたSQLコマンドを実行します。

情報メモ注:

デフォルトで、このコンポーネントはTalend Studioと共には出荷されていません。機能マネージャーを使ってインストールする必要があります。 詳細は、[機能マネージャーを使って機能をインストール](https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/install-features-to-talend-studio)をご覧ください。

## tSnowflakeRowの標準プロパティ

これらのプロパティは、標準ジョブのフレームワークで実行されているtSnowflakeRowを設定するために使われます。

標準のtSnowflakeRowコンポーネントは、Cloudファミリーに属しています。

情報メモ注: このコンポーネントは、動的データベースコネクターの特定のバージョンです。データベース設定に関連するプロパティは、データベースタイプの選択に応じて異なります。動的データベースコネクターについては、[DB Genericコンポーネント](https://help.qlik.com/talend/r/ja-JP/8.0/components/db-generic/db-generic-component)をご覧ください。

## 基本設定

| [Properties] (プロパティ) | 説明 |
| --- | --- |
| データベース | 目的のデータベースタイプをリストから選択し、[Apply] (適用)をクリックします。 |
| [Property Type] (プロパティタイプ) | 接続の詳細を設定する方法を選択します。<br><br><ul> <li> <p> <span>[Built-In] (組み込み)</span>: このコンポーネントの接続の詳細がローカルに設定されます。関連するすべての接続のプロパティ値を手動で指定する必要があります。</p> </li> <li> <p> <span>[Repository] (リポジトリー)</span>: <span><span>[Repository] (リポジトリー)</span><abbr> &gt; </abbr><span>[Metadata] (メタデータ)</span></span>で一元的に保存された接続の詳細が、このコンポーネントによって再使用されます。 </p> <p>このチェックボックスの横にある <span>[...]</span> ボタンをクリックし、表示された <span>[Repository Content] (リポジトリーのコンテンツ)</span>ダイアログボックスで、再使用する接続の詳細をオンにすると、関連するすべての接続のプロパティに値が自動的に入力されます。</p> </li> </ul><br><br>[Connection Component] (接続コンポーネント)ドロップダウンリストから、他の接続コンポーネントを選択した場合、このプロパティは、利用できません。 |
| [Connection Component] (接続コンポーネント) | このコンポーネントで再利用するデータベース接続を開くコンポーネントを選択します。 |
| [Account] (アカウント) | [Account] (アカウント)フィールドに、Snowflakeによって割り当てられたアカウント名を二重引用符で囲んで入力します。 |
| [Authentication Type] (認証タイプ) | 認証タイプを設定するために使われます。<br><br><ul> <li> <p> <span>[Basic] (基本)</span>: キーペア認証が有効でない場合は、このオプションを選択します。 </p> </li> <li> <p> <span>[Key Pair] (キーペア)</span>: キーペア認証が有効な場合は、このオプションを選択します。</p> <p>関連情報は、<a href="https://docs.snowflake.net/manuals/user-guide/jdbc-configure.html#using-key-pair-authentication" target="_blank">[Using Key Pair Authentication] (キーペア認証を使う)</a>をご覧ください。</p> </li> <li> <p> <span>OAuth 2.0</span>: このオプションをオンにすると、データアクセスで外部OAuthを使用できます。</p> <p>関連情報は、<a href="https://docs.snowflake.com/en/user-guide/oauth-ext-overview.html" target="_blank">外部OAuthの概要</a>をご覧ください。</p> </li> </ul><br><br>情報メモ注: [Key Pair] (キーペア)オプションを選択する前に、tSetKeyStoreコンポーネントの[Basic settings] (基本設定)ビューでキーペア認証データが次のように設定済みであることを確認します。<br><br><ol> <li><span>[TrustStore type] (TrustStoreタイプ)</span>フィールドをそのままにしておきます。</li> <li><span>[TrustStore file] (TrustStoreファイル)</span>を<kbd>""</kbd>に設定します。</li> <li><span>[TrustStore password] (TrustStoreパスワード)</span>フィールドをクリアします。</li> <li><span>[Need Client authentication] (クライアント認証が必要)</span>を選択します。</li> <li>KeyStoreファイルへのパスを二重引用符で囲んで<span>[KeyStore file] (KeyStoreファイル)</span>フィールドに入力します(または<span>[KeyStore file] (KeyStoreファイル)</span>フィールドの右側にある<span>[…]</span>ボタンをクリックして、KeyStoreファイルに移動します)。</li> <li>KeyStoreファイルのパスワードを<span>[KeyStore password] (KeyStoreパスワード)</span>フィールドに入力します。</li> <li><span>[Check server identity] (サーバーIDをチェック)</span>オプションをクリアします。</li> </ol> |
| [OAuth token endpoint] (OAuthトークンエンドポイント) | OAuth 2.0トークンエンドポイントを入力します。<br><br>このオプションは、[Authentication Type] (認証タイプ)ドロップダウンリストから、OAuth 2.0が選択されている場合に利用できます。 |
| [Client ID] (クライアントID) | アプリケーションのクライアントIDを入力します。<br><br>このオプションは、[Authentication Type] (認証タイプ)ドロップダウンリストから、OAuth 2.0が選択されている場合に利用できます。 |
| [Client Secret] (クライアントシークレット) | アプリケーションのクライアントシークレットを入力します。<br><br>このオプションは、[Authentication Type] (認証タイプ)ドロップダウンリストから、OAuth 2.0が選択されている場合に利用できます。 |
| [Grant type] (付与タイプ) | アクセストークン取得のために付与タイプを設定します。[Client Credentials] (クライアント認証情報)と[Password] (パスワード)という2つのオプションがあります。<br><br>関連情報は、[クライアント認証情報](https://tools.ietf.org/html/rfc6749#section-1.3.4)と[リソース所有者のパスワード認証情報](https://tools.ietf.org/html/rfc6749#section-1.3.3)をご覧ください。<br><br>このオプションは、[Authentication Type] (認証タイプ)ドロップダウンリストから、OAuth 2.0が選択されている場合に利用できます。 |
| [OAuth username] (OAuthユーザー名) | OAuthユーザー名を入力します。<br><br>このオプションは、[Grant type] (付与タイプ)ドロップダウンリストから、パスワードが選択されている場合に利用できます。 |
| [OAuth password] (OAuthパスワード) | OAuthパスワードを入力します。<br><br>パスワードを入力するためには、パスワードフィールドの横にある[...]ボタンをクリックし、ポップアップダイアログボックスにパスワードを二重引用符で囲んで入力した後、[OK]クリックして設定を保存します。<br><br>このオプションは、[Grant type] (付与タイプ)ドロップダウンリストから、パスワードが選択されている場合に利用できます。<br><br>情報メモ注: OAuthパスワードではスペースがサポートされていません。 |
| [Scope] (スコープ) | スコープを入力します。関連情報は[スコープ](https://docs.snowflake.com/en/user-guide/oauth-ext-overview.html#scopes)をご覧ください。<br><br>このオプションは、[Authentication Type] (認証タイプ)ドロップダウンリストから、OAuth 2.0が選択されている場合に利用できます。 |
| [User Id] (ユーザーID)と[Password] (パスワード) | Snowflakeにログインするための認証情報を二重引用符で囲んで入力します。<br><br><ul> <li> <p><span>[User ID]</span>フィールドに、Snowflakeの<em>LOGIN_NAME</em>パラメーターを使って、Snowflakeで定義されているログイン名を二重引用符で囲んで入力します。詳細は、Snowflakeシステムの管理者にお問い合わせください。</p> </li> <li> <p>パスワードを入力するためには、パスワードフィールドの横にある<span>[...]</span>ボタンをクリックし、ポップアップダイアログボックスにパスワードを二重引用符で囲んで入力して<span>[OK]</span>をクリックし、設定を保存します。</p> </li> </ul> |
| [Warehouse] (ウェアハウス) | 使用するSnowflakeウェアハウスの名前を二重引用符で囲んで入力します。この名前では大文字と小文字が区別され、Snowflakeでは通常は大文字です。 |
| [Schema] (スキーマ) | 使用するデータベーススキーマの名前を二重引用符で囲んで入力します。この名前では大文字と小文字が区別され、Snowflakeでは通常は大文字です。 |
| [Database] (データベース) | 使用するSnowflakeデータベースの名前を二重引用符で囲んで入力します。この名前では大文字と小文字が区別され、Snowflakeでは通常は大文字です。 |
| [Table] (テーブル) | [...]ボタンをクリックし、表示されるウィザードで、使用するSnowflakeテーブルを選択します。 |
| [Schema] (スキーマ)と[Edit schema] (スキーマを編集) | スキーマとは行の説明のことです。処理して次のコンポーネントに渡すフィールド(カラム)数を定義します。Sparkジョブを作成する場合、フィールドの命名時は予約語のlineを避けます。<br><br>[Built-in] (組み込み): そのコンポーネントに対してのみスキーマを作成し、ローカルに保管します。<br><br>[Repository] (リポジトリー): スキーマは作成済みで、リポジトリーに保管されています。さまざまなプロジェクトやジョブデザインで再利用できます。<br><br>処理するSnowflake データ型がVARIANT(変数)、OBJECT(オブジェクト)、またはARRAY(配列)の場合は、コンポーネントでスキーマを定義する際にスキーマエディターウィザードの[Type] (タイプ)カラムの対応するデータで[String] (文字列)を選択します。<br><br>スキーマを変更するには[Edit schema] (スキーマを編集)をクリックします。現在のスキーマがリポジトリータイプの場合は、3つのオプションを利用できます。<br><br><ul> <li> <p> <span>[View schema] (スキーマを表示)</span>: スキーマのみを表示する場合は、このオプションを選択します。</p> </li> <li> <p> <span>[Change to built-in property] (組み込みのプロパティに変更)</span>: ローカルで変更を行うためにスキーマを<span>組み込み</span>に変更する場合は、このオプションを選択します。</p> </li> <li> <p> <span>[Update repository connection] (リポジトリー接続をアップデート)</span>: リポジトリーに保存されているスキーマに変更を加え、変更後にそのコンテンツをすべてのジョブにプロパゲートするかどうかを決める場合は、このオプションを選択します。</p> <p>変更を現在のジョブにのみ反映する場合は、変更後、<span>[No] (いいえ)</span>を選択し、<span>[Repository Content] (リポジトリーコンテンツ)</span>ウィンドウで再びこのスキーマのメタデータを選択します。</p> </li> </ul><br><br>このコンポーネントはダイナミックスキーマ機能の利点を備えているので、ソースファイルから不明なカラムを取得したり、各カラムを個別にマッピングしなくてもソースからカラムを一括してコピーしたりできます。ダイナミックスキーマの詳細は、[ダイナミックスキーマ](https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/dynamic-schema)をご覧ください。<br><br>ダイナミックスキーマ機能は、テーブルの不明なカラムを取得するしくみになっており、その他の目的には使用しないことをお勧めします。テーブルの作成には推奨しません。 |
| [Guess Query] (クエリーを推測) | ボタンをクリックして、[Query] (クエリー)フィールドのテーブルとスキーマに対応するクエリーを生成します。 |
| クエリー | 実行するSQLコマンドを指定します。<br><br>Snowflake SQLコマンドの詳細は、[SQL Command Reference](https://docs.snowflake.net/manuals/sql-reference-commands.html)をご覧ください。 |
| [Die on error] (エラー発生時に強制終了) | このチェックボックスをオンにすると、エラー発生時にジョブの実行が停止されます。<br><br>エラーの発生した行をスキップし、エラーが発生していない行の処理を完了するには、このチェックボックスをオフにします。<br><br>エラーがスキップされる際、Row &gt; Reject接続を使って、エラー行を収集できます。 |

## 詳細設定

| [Properties] (プロパティ) | 説明 |
| --- | --- |
| [Additional JDBC Parameters] (追加のJDBCパラメーター) | 作成するデータベース接続に接続の追加プロパティを指定します。プロパティはセミコロンで区切られ、各プロパティはキー-値ペアです。たとえば、*encryption=1;clientname=Talend*になります。<br><br>このフィールドは、[Basic settings] (基本設定)ビューの[Connection Component] (接続コンポーネント)ドロップダウンリストから[Use this Component] (このコンポーネントを使用)を選択し、[Storage] (ストレージ)ドロップダウンリストから[Internal] (内部)を選択した場合にのみ利用できます。 |
| [Login Timeout] (ログインタイムアウト) | Snowflakeのログイン試行のタイムアウト期間を分単位で指定します。この期間内にレスポンスが返されないと、エラーが生成されます。 |
| ロール | Snowflakeセッションを開始するために使用するデフォルトアクセス制御ロールを、二重引用符で囲んで入力します。<br><br>このロールは既に存在していて、Snowflakeへの接続に使用するユーザーIDに付与されている必要があります。このフィールドを空のままにしておくと、PUBLICロールが自動的に付与されます。Snowflakeのアクセス制御モデルについては、[アクセス制御モデルの理解](https://docs.snowflake.net/manuals/user-guide/security-access-control.html)をご覧ください。 |
| [URL suffix] (URLサフィックス) | 目的のSnowflakeカスタムドメインURLを二重引用符で囲んで入力します。Snowflake URL形式の詳細は、[Standard account URLs](https://docs.snowflake.com/en/user-guide/organizations-connect#standard-account-urls)をご覧ください。<br><br>tSnowflakeConnection以外のSnowflakeコンポーネントの場合、このフィールドは[Basic settings] (基本設定)ビューで[Connection Component] (接続コンポーネント)ドロップダウンリストから、[Use this Component] (このコンポーネントを使用)を選択した場合に利用できます。 |
| [Use PreparedStatement] (PreparedStatementの使用) | プレパレーション済みのステートメントを使用してデータベースをクエリーする場合は、このチェックボックスをオンにします。表示される[Set PreparedStatement Parameters] (PreparedStatementパラメーターの設定) テーブルで、 [Query] (クエリー)フィールドで定義されたSQLステートメント内に疑問符?で表される各パラメーターの値を指定します。<br><br><ul> <li> <p> <span>[Parameter Index] (パラメーターインデックス)</span>: SQLステートメント内のパラメーターの位置。</p> </li> <li> <p> <span>[Parameter Type] (パラメータータイプ)</span>: パラメーターのデータ型。</p> </li> <li> <p> <span>[Parameter Value] (パラメーターの値)</span>: パラメーターの値。</p> </li> </ul><br><br>このプロパティの関連ユースケースは、[クエリーデータにPreparedStatementオブジェクトを使用](https://help.qlik.com/talend/r/ja-JP/8.0/components/mysql/tmysqlrow-tparserecordset-tfileinputdelimited-tfileoutputdelimited-using-preparedstatement-objects-to-query-data-standard-component-this)をご覧ください。 |
| [Commit every] (コミットする間隔) | ノードのバッチがデータベースにコミットされるまでに処理されているべき行数を指定します。<br><br>tSnowflakeConnectionコンポーネントと共に使用した場合、tSnowflakeRowはtSnowflakeConnectionの詳細設定で選択された[Auto Commit] (自動コミット)オプションを無視し、代わりにランタイムでこの値を使用します。 |
| [Use session timezone] (セッションタイムゾーンを使用) | JVMタイムゾーンではなく、セッションタイムゾーンを使用する場合は、このチェックボックスをオンにします。デフォルトでは、このオプションは選択されていません。 |
| [tStatCatcher Statistics] (tStatCatcher統計) | このチェックボックスをオンにすると、ジョブレベルおよび各コンポーネントレベルでジョブ処理メタデータが収集されます。 |

## [Dynamic settings] (ダイナミック設定)

| [Dynamic settings] (ダイナミック設定) | [+]ボタンをクリックしてテーブルに行を追加し、[Code] (コード)フィールドにコンテキスト変数を入力して、ジョブ内で計画した複数の接続からデータベース接続をダイナミックに選択します。この機能は、データストラクチャーが同じでデータベースが異なるデータベーステーブルにアクセスする必要がある場合、特に、Talend Studioを介さずにジョブをデプロイおよび実行する必要がある時など、ジョブの設定を変更できない環境で作業している場合に役立ちます。<br><br>ダイナミックパラメーターの定義法を示すユースケースについては、[コンテキストベースのダイナミック接続によってデータベースからデータを読み取り](https://help.qlik.com/talend/r/ja-JP/8.0/components/defining-context-groups/reading-data-from-databases-through-context-based-dynamic-connections)と、[ダイナミックにロードされた接続パラメーターを使って異なるMySQLデータベースからデータを読み取り](https://help.qlik.com/talend/r/ja-JP/8.0/components/context/reading-data-from-different-mysql-databases-using-dynamically-loaded-connection-parameters)をご覧ください。ダイナミック設定とコンテキスト変数の詳細は、[ダイナミックスキーマ](https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/dynamic-schema)と[コンテキストグループを作成し、その中でコンテキスト変数を定義](https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/creating-context-group-and-define-context-variables-in-it)をご覧ください。 |
| --- | --- |

## [Global Variables] (グローバル変数)

| 変数 | 説明 |
| --- | --- |
| NB\_LINE | 処理された行数。これはAfter変数で、整数を返します。 |
| ERROR\_MESSAGE | エラー発生時にコンポーネントによって生成されるエラーメッセージ。これはAfter変数で、文字列を返します。 |

## 使用方法

| 使用方法のガイダンス | 説明 |
| --- | --- |
| **使用ルール** | このコンポーネントでは、データベースクエリーの柔軟性が提供されており、使用可能なすべてのSQLクエリーが網羅されています。 |

**関連概念**

* [Snowflakeテーブルでのデータの読み書き](https://help.qlik.com/talend/ja-JP/components/8.0/snowflake/tsnowflakeconnection-tsnowflakerow-tsalesforceconnection-writing-data-into-and-reading-data-from-snowflake-table-standard-component "以下は、Talend Snowflakeコンポーネントを使ってSnowflakeに接続し、Snowflakeテーブルを作成し、データをテーブルに書き込み、このテーブルからデータを読み取り、最後にSnowflakeへの接続を閉じる手順の例です。")