【ステップの効果】
- SQL文を実行することができます。
【使用方法】
- 「アクションステップ」を作成します。
- 「アクションの選択」>「データベース」を選択>「SQL実行」を選択します。
- 「データベース」に利用するデータベースと「変更された行」に変数をセットし、「SQL」欄に実行したいSQL文を記載しています。
※今回は登録された”ホテル情報”のテーブルから、列名"ホテル名"の情報が"ホテル名_test"のレコードを
削除しています。
「変更された行」にはShortText変数を使用しています。 - SQL文が実行され、変更のあった行数が変数に入ります。
【設定項目】
①「データベース」:利用するデータベースマッピングを選択します。
※データベースマッピングは、登録元になるデータベースとなります。
事前に以下のように作成したものとなります。
②「SQL」:実行したいSQL文を記載します。
③「変更された行」:SQL文で変更されたレコード数を格納する変数を選択します。
④「デザインモードで実行」:デザインモードで実行したい場合チェックを入れます。
【注意点】
- SQL文の作成はサポート対象外になります。またSQL文実行はお客様の判断にて実行してください。
- 「変更された行」で、SQL文の影響を受けた行の数を変数に保存します。データベースが返したその他の結果は無視されます。
- 「SQL」内で use <Some Other DB> コマンドは実行しないでください。これ以降のすべての SQL コマンド (同一のロボット内など) の結果が変更されてしまいます。
- MySQLからCSV形式のデータをエクスポートすると失敗する
- 変数を格納するTypeファイル用のテーブルを、「データベース データ登録(Store in Database)」ステップ以外の方法(「SQL実行(Execute SQL)」ステップなど)を使用して直接更新した場合、「データベース データ登録(Store in Database)」ステップでのハッシュ値(ObjectKey)の算出が正しく動作しない可能性があります。
Typeファイル用のテーブルについては必ず「データベース データ登録(Store in Database)」ステップで更新してください。
DSからデータベースに変数の値を格納する際の主キー
- 「SQL実行(Execute SQL)」ステップが1ステップ当たり1,000KCUポイントを消費するのに対し、「データベース データ登録(Store In Database)」ステップは1KCUポイントの消費で済みます。
クローリングロボットなどのKCUを大量に消費するロボットにおいては、KCUの節約という観点から「データベース データ登録(Store In Database)」ステップを使用するのが望ましいです。
ロボット作成時の注意点 (ロボット設計ガイドライン)
【関連情報】
※この記事は2021年3月1日にver10.4.0.2で作成したものです。
※本記事は初心者の方に分かりやすくご説明することを目的としております。
そのため、意図的に厳密な表現を避けている場合がございますのでご了承ください。