データベースのテーブルから検索を行い、その結果を値として返します。
出力のフィールドが1つの場合、そのフィールドの型に応じて適切な型で返します(VARCHARはString、Timestampは DateTime型など)。フィールドが複数の場合は、区切り文字で指定した文字で区切ってString型として出力します。
| 入力 | データ型 | 説明 |
|---|---|---|
| 入力N | All | データ |
| 出力 | データ型 | 説明 |
|---|---|---|
| 出力N | All | 検索に一致した値 |
| 名前 | プロパティ型 | 説明 | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| コネクション名 | connection | 管理コンソールで定義したコネクション名を指定します。 | ||||||||||||
| SQL文 | string |
検索するSQL を指定します。 SQLビルダーによって自動作成したり、さらに編集したりすることができます。SQLビルダーの詳細については、RDB(Get)コンポーネントのトピック「SQLビルダーの使い方」を参照してください。 SQLを手動で編集する場合は、JavaのPreparedStatementで使用できる'?' を使ってキーを指定します。 例えば、「select field2 from tablename where field1=?」とSQL文に指定した場合は、TableDBへの入力が?の部分に置き換わり検索条件を指定します。 キーが2つ以上ある場合は「select field2 from tablename where field1=? and field3=?」のように指定します。この場合TableDBへの入力は2つ必要になり、それぞれが?の部分に置き換わります。 「select * from tablename」も使用が可能です。 使用している?の数と入力の数があっていない場合はバインドエラーとなりエラーが発生します。 (?を使用せず入力データなしで実行することもできます。) SQLビルダーによって自動作成した場合、SQL文中のパラメータはすべて上記の'?'に置換されます。逆にSQLビルダーを起動するとき、SQL文中の'?'はすべて'?input1?', '?input2?', ... という名前のパラメータに置き換えられます。また、SQLビルダーで定義したパラメータ名、順序、データ型は使用されないので注意してください。特に、データ型に関しては、SQLビルダーで「SELECTテスト」を行う時は定義したパラメータのデータ型を使用しますが、フローで実行する時は、実行時にパラメータに入力されたデータのデータ型を使用します。 |
||||||||||||
| 区切り文字 | string | 一致したレコードに複数のフィールドがあった場合、フィールドを区切る文字を指定します。 | ||||||||||||
| フィールドが複数の場合 | choice | SQL文から複数のカラムをSELECTしている場合の出力方法を指定します。
|
||||||||||||
| レコードが無い場合 | choice | レコードが1つも一致しなかった場合の動作を指定します。
|
||||||||||||
| レコードが複数の場合 | choice | レコードが2つ以上一致した場合の動作を指定します。
|
||||||||||||
| 固定値 | string | レコードが無い場合が「固定値を出力」の場合の出力値を指定します。 |