データベースの登録制御(create)
SQLのCREATE句を組立て実行します。処理結果件数は処理中に参照が可能な他、
mappingタグを用いてDataBeanに返却できます。
- 使用可能箇所
- run
- Sub Tags
- value, formula
属性
- id
- 処理結果件数を管理するID
- entity
- テーブル名/ビュー名、またはビュー・クラス名
- transaction
- トランザクション設定ファイルのXMLファイル名(例:default)
- database
- トランザクション設定ファイル内の接続設定のコード
- schema
- 標準スキーマ
- when
-
多くのTagsでサポートしている「実行可否判定のための属性」です。
(こちらを参照)
(記述例)
「SYS_USER_ACTIVITY」のUSER_CODEにDataBeanのIDの値を設定、
ACTIVITY_TYPEに'ERROR'を設定してレコードを登録
<create id="ADD_COUNT" entity="SYS_USER_ACTIVITY">
<value key="ID" map="USER_CODE" />
<value val="ERROR" map="ACTIVITY_TYPE" />
</create>
登録データの定義(value)
createタグを用いてデータベースにデータを登録する際に、カラムへ設定する値または数式を定義できます。
- 使用可能箇所
- create
- Sub Tags
- 記述不可
属性
- map
- データを設定するカラム名
- def
- 初期値 ※設定値がNULLの場合に設定する値
- val
- 固定値 ※固定値にはコマンド・テキストが使用できます。
- datatype
- データ型
- dataformat
-
データ様式
※固定値を使用する場合、カラムのデータ型にあわせてdatatypeおよびdataformatを
定義してください。
- key
- データ取得元のDataBean項目名
- formula
- 数式 ※数式内ではコマンド・テキストが使用できます。
- when
- 多くのタグでサポートしている「実行可否判定のための属性」です。(こちらを参照)
(記述例)
「SYS_USER」にレコードを登録(登録される値は以下の通り)
USER_CODE USER_CODEの最大値+1を検索して設定
USER_NAME DataBeanのNAMEを設定
CREATE_DATE CURRENT_TIMESTAMPを設定
CREATE_USER ユーザー表示情報(コマンド・テキスト)を設定
<create id="ADD_COUNT" entity="SYS_USER">
<value formula="(SELECT MAX({USER_CODE}) + 1 FROM SYS_USER)" map="USER_CODE" />
<value key="NAME" map="USER_NAME" />
<value val="CURRENT_TIMESTAMP" map="CREATE_DATE" />
<value val="@context:USER_DISP" map="CREATE_USER" />
</create>
createタグを用いてデータベースにデータを登録する際に、カラムへ設定する数式を定義できます。
※valueタグのformula属性では書きづらい長文の数式を用いる場合に使用。
※formula属性と同様に数式内ではコマンド・テキストが使用できます。
- 使用可能箇所
- create
- Sub Tags
- 記述不可
属性
- map
- データを設定するカラム名
- when
- 多くのタグでサポートしている「実行可否判定のための属性」です。(こちらを参照)
(記述例)
「SYS_USER」にレコードを登録(登録される値は以下の通り)
USER_CODE USER_CODEの最大値+1を検索して設定
USER_NAME DataBeanのNAMEを設定
CREATE_DATE CURRENT_TIMESTAMPを設定
CREATE_USER ユーザー表示情報(コマンド・テキスト)を設定
<create id="ADD_COUNT" entity="SYS_USER">
<formula map="USER_CODE">
<![CDATA[
(SELECT MAX({USER_CODE}) + 1 FROM SYS_USER)
]]>
</formula>
<value key=" NAME" map="USER_NAME" />
<value val="CURRENT_TIMESTAMP" map="CREATE_DATE" />
<value val="@context:USER_DISP" map="CREATE_USER" />
</create>