更新系SQL実行処理

オペレーション名

更新系SQL実行

機能概要

SQL文を用いてDr.Sum EAのテーブルにデータを書き込みます。

データモデル

本コンポーネントのデータモデルはテーブルモデル型です。
入出力のスキーマについては「テーブルモデル型のスキーマ」を参照してください。

プロパティ

基本設定

項目名 必須/省略可 変数の使用 説明 補足
名前 必須 使用不可 スクリプトキャンバス上での名前を入力します。  
入力データ 省略可 使用不可 スクリプトキャンバス上にあるコンポーネントを選択します。
  • [SQL文]にSQLパラメータを使用しない場合には[入力データ]を指定しません。

必須設定

項目名 必須/省略可 変数の使用 説明 補足
接続先 必須 使用不可 グローバルリソースを選択します。
グローバルリソースの設定方法については「グローバルリソースのプロパティ」を参照してください。
  • [追加]:
    新規にグローバルリソースを追加します。
  • [一覧の編集]:
    「リソース一覧の編集」プロパティにて、グローバルリソースの設定を編集することができます。
 
SQL文 必須 使用可 データベースへ発行するSQL文を入力します。
  • SQLパラメータ」を使用できます。
  • INSERT 文、UPDATE 文、または DELETE 文、何も返さないSQL文を指定できます。
  • [SQL文]にSQLパラメータが含まれていない場合には、java.sql.StatementクラスのexecuteUpdate()メソッドを実行し、 SQLパラメータが含まれている場合には、java.sql.PreparedStatementクラスのexecuteUpdate()メソッドを実行しています。 上記以外で実行できるSQL文についてはデータベースベンダーにお問い合わせください。
スキーマ定義 省略可
-
[SQL文]で指定したSQLパラメータを設定します。
  • [SQL文]にSQLパラメータを使用しない場合には表示されません。
  • [スキーマ定義]で表示された列名がMapperのスキーマに表示されます。
スキーマ定義/列名 必須 使用不可 SQLパラメータの名前を設定します。
  • [SQL文]にSQLパラメータを使用しない場合には表示されません。
スキーマ定義/型 必須 使用不可 SQLパラメータの型を選択します。
  • [SQL文]にSQLパラメータを使用しない場合には表示されません。
  • 「Native型 (内部データ型)」形式で表示されます。
    • Native型:
      Dr.Sum EAの固有のデータ型です。
    • 内部データ型:
      DataSpider内部で使用しているデータ型です。詳細はこちらを参照してください。
プロパティアクション
項目名 説明 補足
接続の更新 接続を最新状態にリフレッシュします。  
SQLウィザード SQLウィザードを起動します。
操作方法については「SQLウィザード-ヘルプ」を参照してください。
  • [SQL文]で指定したSQL文をSQLウィザードで編集することはできません。
  • ビュー、マルチビュー、リンクテーブルは表示されません。
テーブル情報の表示 [接続先]で指定したデータベースに含まれるテーブルの構造、内容、関連情報を表示します。
テーブル情報については「テーブル情報」を参照してください。
  • [接続先]が選択されている場合、有効になります。
  • [テーブル名]に、ビュー、マルチビュー、リンクテーブルは表示されません。
  • [テーブル名]でディストリビュータを選択した場合、[テーブル内容]は表示されません。

コメント

項目名 必須/省略可 変数の使用 説明 補足
コメント 省略可 使用不可 このアダプタの簡単な説明を記述することができます。
説明を記述すると、仕様書に反映させることができます。
 

トランザクション

トランザクションはサポートしています。

使用できるコンポーネント変数

コンポーネント変数名 説明
count 処理されたデータ件数を返します。
1回の実行で複数件挿入、更新する場合、データ件数が正しく取得できない場合がありますが、データは正しく処理されています。
error_code エラーが発生したときに、Dr.SumEAのエラーステータスコードを10進数の値で返します。
エラーが発生しなかった時にはnullを返します。
バージョンにより、内容が変わる可能性があります。
error_type エラーが発生したときに、エラーの種類を返します。
java.io.FileNotFoundExceptionというような形式で返されます。
エラーが発生しなかった時にはnullを返します。
バージョンにより、内容が変わる可能性があります。
error_message エラーが発生したときのエラーメッセージを返します。
バージョンにより、内容が変わる可能性があります。
error_trace エラーが発生したときのトレース情報を返します。
バージョンにより、内容が変わる可能性があります。

SQLパラメータ

更新系SQL実行処理では、SQLパラメータを使用することができます。
プリコンパイルしたSQL文を使用したいときにはSQLパラメータを使用します。同一SQL文を複数回実行するときにプリコンパイルされたSQL文を使用するとパフォーマンスが向上します。

SQLパラメータは「?{name}」と記述します。「name」は任意に指定できます。 SQLパラメータはMapperで値を設定します。

例えば、SQL文に「insert into test_table values (?{col1}, ?{col2}, ?{col3})」と記述した場合、3つのSQLパラメータ(col1、col2、col3)が動的に変更できます。 この更新系SQL実行処理をMapperの出力先に設定すると、Mapperの出力スキーマにcol1、col2、col3が表示されます。Mapperでcol1、col2、col3それぞれにマッピングすることで値を設定します。

主な例外

例外名 原因 対策
ResourceNotFoundException
リソース定義が見つかりませんでした。名前:[]
[接続先]が指定されていません。 [接続先]を指定してください。
ResourceNotFoundException
リソース定義が見つかりませんでした。名前:[<グローバルリソース名>]
[接続先]で選択されたリソース定義が見つかりません。 [接続先]で指定したグローバルリソースを確認してください。
InvalidPropertyConfigurationException [SQL文]が指定されていません。 [SQL文]を指定してください。

サンプル

WHERE句による条件指定を用いた更新系SQLの実行を行うスクリプトを作成します。



更新系SQL実行処理のプロパティの設定および更新対象のテーブルデータは以下のようになっています。



SQLウィザードを使用し以下のようなSQLクエリを生成します。
UPDATE Product SET name = 'SampleType' WHERE Product.id ='00000'

更新系SQL実行処理では設定されたSQLクエリを発行しテーブルへのデータの挿入・更新・削除を行います。

このサンプルスクリプトでは設定されたSQLクエリによりUPDATE文を実行しています。
スクリプト実行後のテーブル内容は以下の通りです。

[Product]