Cosminexus V9 BPM/ESB基盤 サービスプラットフォーム 開発ガイド 受付・アダプタ定義編
DBアダプタの定義方法について説明します。
SQLオペレーション定義ファイルは,実行環境でDBアダプタを介してアクセスするデータベースの情報や,SQLの実行形式を定義するファイルです。DBアダプタ用のXMLフォーマット定義ファイルを作成するときの基となるファイルです。
SQLオペレーション定義ファイルの作成方法を次に説明します。
SQLオペレーション定義ファイルは,テキストエディタなどを使用してXML文書形式で作成します。XML文書で使用できない「<」,「>」,「&」などの文字を使用する場合,エスケープするか,CDATAセクションを利用する必要があります。
要素,属性およびテキストデータは,W3CのXMLの仕様に従って指定します。
なお,XML名前空間名は使用できません。
作成するXML文書の詳細を説明します。
csa_sql_<任意の名称>.xml |
図3-2 SQLオペレーション定義ファイルの構造
<?xml version="XMLのバージョン" encoding="文字コード"?> <DBadapter_SQL_OPERATION dba_separate_transaction="トランザクション分離オプション" sqloperation_chk="SQL命令チェックオプション"> <DATABASE_DATA> <DB_NAME dynamic="接続先の動的変更オプション">データベース参照名</DB_NAME> <DB_TYPE>データベース種別</DB_TYPE> </DATABASE_DATA> <SQL_DATA encoding="文字バイナリデータのエンコード・デコード形式"> <SQL識別子 out_maxOccurs="検索結果出力最大件数"> SQL命令 <引数要素名 dba_inf="引数の種別" data_type="データ型"/> </SQL識別子> : </SQL_DATA> <MULTI_SQL_DATA> <MAX_SQL_NO>1回のサービス部品実行要求で実行するSQL文の最大個数</MAX_SQL_NO> </MULTI_SQL_DATA> </DBadapter_SQL_OPERATION> |
<?xml version="XMLのバージョン" encoding="文字コード"?> |
<DBadapter_SQL_OPERATION dba_separate_transaction="Y|N" sqloperation_chk="Y|N"> : </DBadapter_SQL_OPERATION> |
<DATABASE_DATA> データベース参照名 データベース種別 </DATABASE_DATA> |
<DB_NAME dynamic="Y|N">データベース参照名</DB_NAME> |
<DB_TYPE>データベース種別</DB_TYPE> |
<SQL_DATA encoding="hexBinary|base64Binary"> SQL識別子 SQL実行文 </SQL_DATA> |
<SQL識別子 out_maxOccurs="検索結果出力最大件数"> SQL実行文 </SQL識別子> : |
SQL命令 <引数要素名 dba_inf="引数の種別" data_type="データ型"/> |
表3-3 SELECTで検索できるデータ型(HiRDBの場合)
HiRDBのデータ型 | 検索の可否 |
---|---|
HiRDB Type4 JDBC Driverの場合 | |
INT〔EGER〕 | ○ |
SMALLINT | ○ |
〔LARGE〕 DEC〔IMAL〕 NUMERIC |
○ |
FLOAT DOUBLE PRECISION |
○ |
SMALLFLT REAL |
○ |
CHAR〔ACTER〕 | ○ |
VARCHAR CHAR〔ACTER〕VARYING |
○ |
NCHAR NATIONAL CHAR |
○ |
NVARCHAR NATIONAL CHAR〔ACTER〕VARYING NCHAR VARYING |
○ |
MCHAR | ○ |
MVARCHAR | ○ |
DATE | ○ |
TIME | ○ |
TIMESTAMP | ○ |
INTERVAL YEAR TO DAY | − |
INTERVAL HOUR TO SECOND | − |
BLOB BINARY LARGE OBJECT |
○ |
BINARY | ○ |
BOOLEAN | − |
表3-4 SELECTで検索できるデータ型(Oracleの場合)
Oracleのデータ型 | 検索の可否 |
---|---|
Oracle JDBC Thin Driverの場合 | |
VARCHAR2 | ○ |
NVARCHAR2 | ○ |
NUMBER | ○ |
LONG | ○ |
DATE | ○※ |
BINARY_FLOAT | − |
BINARY_DOUBLE | − |
TIMESTAMP | − |
TIMESTAMP WITH TIME ZONE | − |
TIMESTAMP WITH LOCAL TIME ZONE | − |
INTERVAL YEAR TO MONTH | − |
INTERVAL DAY TO SECOND | − |
RAW | ○ |
LONG RAW | ○ |
ROWID | ○ |
UROWID | − |
CHAR | ○ |
NCHAR | ○ |
CLOB | ○ |
NCLOB | ○ |
BLOB | ○ |
BFILE | − |
ユーザ定義型(オブジェクト型) | − |
ユーザ定義型(REFデータ型) | − |
ユーザ定義型(VARRAY) | − |
ユーザ定義型(ネストした表) | − |
SELECT TO_CHAR(c_ts) FROM 表名
表3-5 data_typeに指定できるデータ型(HiRDBの場合)
HiRDBのデータ型 | data_typeに指定できるデータ型 | 引数として利用するデータの変換先のデータ型およびクラス |
---|---|---|
INT〔EGER〕 | INTEGER | int |
SMALLINT | SMALLINT | short |
〔LARGE〕 DEC〔IMAL〕 NUMERIC |
DECIMAL | java.math.BigDecimal |
FLOAT DOUBLE PRECISION |
FLOAT | double |
SMALLFLT REAL |
REAL | float |
CHAR〔ACTER〕 | CHAR | java.lang.String |
NCHAR NATIONAL CHAR |
||
MCHAR | ||
VARCHAR CHAR〔ACTER〕VARYING |
VARCHAR | java.lang.String |
NVARCHAR NATIONAL CHAR〔ACTER〕VARYING NCHAR VARYING |
||
MVARCHAR | ||
DATE | DATE | java.sql.Date |
TIME | TIME | java.sql.Time |
TIMESTAMP | TIMESTAMP | java.sql.Timestamp |
BLOB BINARY LARGE OBJECT |
LONGVARBINARY | byte[] |
BINARY | LONGVARBINARY | byte[] |
表3-6 data_typeに指定できるデータ型(Oracleの場合)
Oracleのデータ型 | data_typeに指定できるデータ型 | 引数として利用するデータの変換先のデータ型およびクラス |
---|---|---|
LONG | LONGVARCHAR | java.io.Reader |
NUMBER | NUMERIC | java.math.BigDecimal |
VARCHAR2 | VARCHAR | java.lang.String |
NVARCHAR2 | − | |
ROWID | CHAR | |
CHAR | CHAR | |
NCHAR | − | |
CLOB | CLOB※1 |
|
NCLOB | − | |
DATE | DATE※2 | java.sql.Date |
TIME※3 | java.sql.Time | |
TIMESTAMP※4 | java.sql.Timestamp | |
RAW | VARBINARY | byte[] |
LONG RAW | LONGVARBINARY | byte[] |
BLOB | BLOB | byte[] |
<MULTI_SQL_DATA> 実行するSQL文の最大個数 </MULTI_SQL_DATA> |
<MAX_SQL_NO>1回のサービス部品実行要求で実行するSQL文の最大個数</MAX_SQL_NO> |
受注番号 (INTEGER) |
得意先コード(CHAR) | 商品コード (CHAR) |
受注個数 (INTEGER) |
---|---|---|---|
1 | AA001 | 0001 | 5 |
2 | AB002 | 0001 | 1 |
3 | AA001 | 0102 | 3 |
4 | XA005 | 0103 | 1 |
5 | AA001 | 0105 | 1 |
OPERATION1:SELECT * FROM DBA.受注表 WHERE <val1> <val2> <val3> OPERATION2:SELECT <val1> SUM(<val2>) FROM DBA.受注表 GROUP BY <val3> OPERATION3:INSERT INTO DBA.受注表 VALUES(<val1>,<val2>,<val3>,<val4>) |
<?xml version="1.0" encoding="UTF-8" ?> <DBadapter_SQL_OPERATION> <DATABASE_DATA> <DB_NAME>DB_SERVER1</DB_NAME> <DB_TYPE>HIRDB</DB_TYPE> </DATABASE_DATA> <SQL_DATA> <OPERATION1> SELECT * FROM DBA.受注表 WHERE <val1 dba_inf="column"/> <val2 dba_inf="preset"/> <val3 dba_inf="data" data_type="CHAR"/> </OPERATION1> <OPERATION2> SELECT <val1 dba_inf="column"/> SUM(<val2 dba_inf="column"/>) FROM DBA.受注表 GROUP BY <val3 dba_inf="column"/> </OPERATION2> <OPERATION3> INSERT INTO DBA.受注表 VALUES(<val1 dba_inf="data" data_type="INTEGER" />, <val2 dba_inf="data" data_type="CHAR"/>, <val3 dba_inf="data" data_type="CHAR"/>, <val4 dba_inf="data" data_type="INTEGER"/>) </OPERATION3> </SQL_DATA> </DBadapter_SQL_OPERATION> |
<?xml version="1.0" encoding="UTF-8" ?> <DBadapter_SQL_OPERATION> <DATABASE_DATA> <DB_NAME>DB_SERVER1</DB_NAME> <DB_TYPE>HIRDB</DB_TYPE> </DATABASE_DATA> <SQL_DATA> <OPERATION1> SELECT * FROM DBA.受注表 WHERE <val1 dba_inf="column"/> <val2 dba_inf="preset"/> <val3 dba_inf="data" data_type="CHAR"/> </OPERATION1> <OPERATION2> SELECT <val1 dba_inf="column"/> SUM(<val2 dba_inf="column"/>) FROM DBA.受注表 GROUP BY <val3 dba_inf="column"/> </OPERATION2> <OPERATION3> INSERT INTO DBA.受注表 VALUES(<val1 dba_inf="data" data_type="INTEGER" />, <val2 dba_inf="data" data_type="CHAR"/>, <val3 dba_inf="data" data_type="CHAR"/>, <val4 dba_inf="data" data_type="INTEGER"/>) </OPERATION3> </SQL_DATA> <MULTI_SQL_DATA> <MAX_SQL_NO>10</MAX_SQL_NO> </MULTI_SQL_DATA> </DBadapter_SQL_OPERATION> |
DBアダプタの場合,WSDLが生成されないため,サービス部品の電文フォーマットも自動生成されません。そのため,サービス部品の電文フォーマット(DBアダプタ用のXMLフォーマット定義ファイル)を作成して,設定する必要があります。
DBアダプタ用のXMLフォーマット定義ファイルを作成するには,「(1) SQLオペレーション定義ファイルの作成」で作成したSQLオペレーション定義ファイルの名称を-oオプションに指定してcsamkxmlsコマンドを実行します。
<サービスプラットフォームのインストールディレクトリ>\CSC\bin\csamkxmls -o <SQLオペレーション定義ファイルの名称> -x <DBアダプタ用のXMLフォーマット定義ファイルの名称> |
DBアダプタ用のXMLフォーマット定義ファイルの作成例を次に示します。
図3-3 (例1)SELECT文を使用し,WHERE句の値を引数化したい場合
図3-4 (例2)SELECT文を使用し,取得する列名も引数化したい場合
図3-5 (例3)SELECT文を使用し,WHERE句の列名や式も引数化したい場合
DBアダプタを定義する場合の手順を次に示します。
サービスプラットフォームが提供するテンプレートファイルを利用して,アプリケーション統合属性ファイルを編集します。
アプリケーション統合属性ファイルの編集手順を示します。
表3-7 アプリケーション統合属性ファイルの設定項目
タグ | 説明 | 設定内容 | 変更 可否 |
設定例 |
---|---|---|---|---|
<hitachi-application-all-property> | ルートタグ | − | 否 | − |
<ejb-jar> | EJBに関する情報の定義の開始タグ | − | 否 | − |
<hitachi-session-bean-property> | SessionBeanの属性の定義の開始タグ | − | 否 | − |
<resource-ref> | リソース参照についての定義の開始タグ※1 | − | 否 | − |
<res-ref-name> | リソース参照名 | SQLオペレーション定義ファイルの<DB_NAME>タグに指定したデータベース参照名 | 可 | DB_SERVER1 |
<res-sharing-scope> | 参照したリソースを共有するかどうかの指定 | DBアダプタが参照するDB Connectorを共有するかどうかの指定 | 可 | Shareable |
<linked-to> | データソース表示名 | DB Connectorのプロパティ定義(display-name)に指定したリソースアダプタの名称 | 可 | DB_Connector_for_HiRDB_Type4_XAやDB_Connector_for_Oracle_XAなど※2 display-nameを変更した場合は変更後の名称。 |
</resource-ref> | リソース参照についての定義の終了タグ | − | 否 | − |
<container-transaction> | コンテナのトランザクションについての定義の開始タグ | − | 否 | − |
<trans-attribute> | メソッドに割り当てるトランザクション属性 | トランザクションを引き継ぐRequired | 可 | Required※3 |
</container-transaction> | コンテナのトランザクションについての定義の終了タグ | − | 否 | − |
<session-runtime> | runtimeの定義の開始タグ | − | 否 | − |
<stateless> | statelessの定義の開始タグ | − | 否 | − |
<pooled-instance> | プール内のインスタンスについての定義の開始タグ | − | 否 | − |
<minimum> | プール内のインスタンスの最小数 | DBアダプタのインスタンスの最小数 | 可 | 0または1≦minimum≦maximum |
<maximum> | プール内のインスタンスの最大数 | DBアダプタのインスタンスの最大数 | 可 | 0(無制限)または1≦maximum≦maximum-sessions |
</pooled-instance> | プール内のインスタンスについての定義の終了タグ | − | 否 | − |
</stateless> | statelessの定義の終了タグ | − | 否 | − |
</session-runtime> | runtimeの定義の終了タグ | − | 否 | − |
</hitachi-session-bean-property> | SessionBeanの属性の定義の終了タグ | − | 否 | − |
</ejb-jar> | EJBに関する情報の定義の終了タグ | − | 否 | − |
</hitachi-application-all-property> | ルートタグ | − | 否 | − |
要求電文のデータ変換を行う場合,サービスアダプタ定義画面で標準電文にサービスリクエスタから入力される電文を設定し,データ変換定義画面でデータ変換を定義します。応答電文のデータ変換を行う場合,サービス部品から返される電文に標準電文を設定し,データ変換定義画面でデータ変換を定義します。
サービスリクエスタの電文の形式と,DBアダプタ電文の形式が異なる場合,データ変換が必要です。
次のような場合は,標準電文のフォーマットを指定してデータ変換を定義します。
データ変換の詳細については,マニュアル「サービスプラットフォーム 開発ガイド 基本開発編」の「6. データ変換の定義」を参照してください。
DBアダプタの追加時にEARファイルを設定します。DBアダプタを追加したあとにEARファイルを修正する必要がある場合,DBアダプタのサービスアダプタ定義画面で,EARファイルを入れ替えます。
DBアダプタのサービスアダプタ定義画面で,EARファイルを入れ替える手順を次に示します。
DBアダプタに要求を出すサービスリクエスタは,要求電文を受け付ける標準受付の種類によって作成方法が異なります。それぞれの標準受付の種類ごとの作成方法を参照して作成してください。参照先を次の表に示します。
表3-8 DBアダプタに要求を出すサービスリクエスタの作成方法
標準受付の種類 | 参照先 | |
---|---|---|
同期受付 | Webサービス(SOAP1.1) | マニュアル「サービスプラットフォーム 開発ガイド 基本開発編」の「8.2 標準の同期受付(Webサービス)に要求を出すサービスリクエスタ(SOAP通信基盤)」 |
Webサービス(SOAP1.2) | マニュアル「サービスプラットフォーム 開発ガイド 基本開発編」の「8.3 標準の同期受付(Webサービス)に要求を出すサービスリクエスタ(JAX-WSエンジン)」 | |
SessionBean | マニュアル「サービスプラットフォーム 開発ガイド 基本開発編」の「8.4 標準の同期受付(SessionBean)に要求を出すサービスリクエスタ」 | |
非同期 | MDB(WS-R) | マニュアル「サービスプラットフォーム 開発ガイド 基本開発編」の「8.5 標準の非同期受付(MDB(WS-R))に要求を出すサービスリクエスタ」 |
MDB(DBキュー) | マニュアル「サービスプラットフォーム 開発ガイド 基本開発編」の「8.6 標準の非同期受付(MDB(DBキュー))に要求を出すサービスリクエスタ」 |
以降の項では,DBアダプタ電文の形式について説明します。
DBアダプタ用のサービスリクエスタの電文の形式が,DBアダプタ電文の形式と異なる場合,データ変換が必要です。データ変換の詳細については,マニュアル「サービスプラットフォーム 開発ガイド 基本開発編」の「6. データ変換の定義」を参照してください。
要求電文は,XML文書形式で作成します。
要素,属性およびテキストデータは,W3CのXMLの仕様に従って指定します。XML文書で使用できない「<」,「>」,「&」などの文字を使用する場合,エスケープするか,CDATAセクションを利用する必要があります。
要求電文の形式は,単一のSQL文の実行を要求する場合と,複数のSQL文の実行を要求する場合とで異なります。
要求電文の形式を次に示します。なお,斜体の文字は可変値を表します。
<DBadapter> <SQL識別子 out_maxOccurs="検索結果出力最大件数"> <DBA_IN_DATA> <引数要素 nulldata="空要素の扱い">引数要素のデータ</引数要素> : </DBA_IN_DATA> </SQL識別子> </DBadapter> |
<DBadapter> <DBA_MULTI_SQL> <SQL識別子 out_maxOccurs="検索結果出力最大件数"> <DBA_IN_DATA> <引数要素 nulldata="空要素の扱い">引数要素のデータ</引数要素> : </DBA_IN_DATA> </SQL識別子> </DBA_MULTI_SQL> : </DBadapter> |
要求電文の要素と属性について次の表に示します。なお,要素および属性の指定は,SQLオペレーション定義ファイルの設定値に依存します。SQLオペレーション定義ファイルについては「(1) SQLオペレーション定義ファイルの作成」を参照してください。
表3-9 要求電文の要素と属性
要素名・属性名 | 種別 | 内容と設定値 | 設定値の型 | 省略可否 |
---|---|---|---|---|
DBadapter | 要素 | ルート要素です。次の下位要素があります。
|
− | × |
DBA_MULTI_SQL | 要素 | サービスリクエスタからの要求が,複数のSQL文を実行する要求であることを示す要素です。SQL識別子以降の下位要素で入力情報を設定します。 SQLオペレーション定義ファイルのMAX_SQL_NO要素に設定した値以内で複数記述できます。
|
− | ○ |
SQL識別子 | 要素 | SQL識別子にはSQLオペレーション定義ファイルで指定したSQL識別子の名称を指定します。 DBA_IN_DATA以降の下位要素で,入力情報を設定します。 属性にout_maxOccursがあります。 |
− | ○ |
out_maxOccurs | 属性 | 検索結果出力最大件数を指定します。0以上の値を指定します。
|
xsd:int | ○ |
DBA_IN_DATA | 要素 | 引数要素以降の下位要素で,SQLオペレーション定義ファイルで設定した引数要素のデータを設定します。 | − | × |
引数要素 | 要素 | 引数要素にはSQLオペレーション定義ファイルで指定した引数要素の名称を指定します。 この要素には,SQLオペレーション定義ファイルで指定した引数要素のデータが格納されます。 属性にnulldataがあります。
|
xsd:stringまたはdata_typeの設定値※ | × |
nulldata | 属性 | SQLオペレーション定義ファイルで指定したdba_inf(引数の種別)が「data」の場合に,空要素のデータを「null」として扱うかどうかを指定します(dba_infが「data」以外の場合は,指定できません)。
|
xsd:string {Y|N} |
○ |
表3-10 data_typeの設定値と引数要素の型の対応(HiRDBの場合)
data_typeの設定値 | 引数要素の型 |
---|---|
INTEGER | xsd:int※ |
SMALLINT | xsd:short※ |
DECIMAL | xsd:string |
FLOAT | xsd:double※ |
REAL | xsd:float※ |
CHAR | xsd:string |
VARCHAR | xsd:string |
DATE | xsd:date※ |
TIME | xsd:string |
TIMESTAMP | xsd:string |
LONGVARBINARY | xsd:hexBinary |
xsd:base64Binary |
表3-11 data_typeの設定値と引数要素の型の対応(Oracleの場合)
data_typeの設定値 | 引数要素の型 |
---|---|
NUMERIC | xsd:string |
CHAR | xsd:string |
VARCHAR | xsd:string |
DATE | xsd:date※ |
TIME | xsd:string |
TIMESTAMP | xsd:string |
LONGVARCHAR | xsd:string |
CLOB | xsd:string |
VARBINARY | xsd:hexBinary |
xsd:base64Binary | |
LONGVARBINARY | xsd:hexBinary |
xsd:base64Binary | |
BLOB | xsd:hexBinary |
xsd:base64Binary |
なお,DBアダプタに送信する要求電文で設定する引数要素の値は,次の表のとおりに扱います。
表3-12 DBアダプタに送信する要求電文での引数要素の扱い
要求電文の引数要素の値 | SQLオペレーション定義ファイルの設定値 | 要求電文のnulldataの属性値 | 引数要素の扱い | |
---|---|---|---|---|
dba_infの属性値 | data_typeの属性値 | |||
空要素 | data | − | "Y"または"△Y△"※ | null |
"Y"または"△Y△"以外(省略時も含む) | 空文字列("") | |||
data以外 | − | − | 空文字列("") | |
空要素以外 | data | CHAR,VARCHAR,LONGVARCHAR,CLOB | − | 値の前後の空白文字は削除しません。<引数要素>△ABC△</引数要素>は,空白文字を削除しないで"△ABC△"として扱います。 |
CHAR,VARCHAR,LONGVARCHAR,CLOB以外 | − | 値の前後の空白文字を削除します。<引数要素>△123△</引数要素>は,空白文字を削除して"123"として扱います。 | ||
data以外 | − | − | 値の前後の空白文字は削除しません。<引数要素>△ABC△</引数要素>は,空白文字を削除しないで"△ABC△"として扱います。 |
応答電文は,XML文書形式で出力されます。
なお,検索結果(列名など)にXML文書で使用できない「<」や「&」などの文字が含まれていた場合,「<」や「&」などにエスケープして応答電文に設定されます。そのため,データベースに格納されているデータをエスケープする必要はありません。
応答電文の形式は,単一のSQL文の実行要求に対する応答の場合と,複数のSQL文の実行要求に対する応答の場合とで異なります。
応答電文の形式を次に示します。なお,斜体の文字は可変値を表します。
<DBadapter> <SQL識別子 out_maxOccurs="検索結果出力最大件数"> <DBA_IN_DATA> <引数要素 nulldata="空要素の扱い">引数要素のデータ</引数要素> : </DBA_IN_DATA> <DBA_OUT_DATA> <DBA_ResultSetNo>SQLリターン値</DBA_ResultSetNo> <DBA_ResultSetXmlNo>検索結果の件数</DBA_ResultSetXmlNo> <DBA_ResultSetName> <DBA_ResultColumnName cid="列番号">列の名称</DBA_ResultColumnName> : </DBA_ResultSetName> <DBA_ResultSet lid="行番号"> <DBA_ResultColumn cid="列番号">該当行n列目の検索結果</DBA_ResultColumn> : </DBA_ResultSet> : </DBA_OUT_DATA> </SQL識別子> </DBadapter> |
<DBadapter> <DBA_MULTI_SQL> <SQL識別子 out_maxOccurs="検索結果出力最大件数"> <DBA_IN_DATA> <引数要素 nulldata="空要素の扱い">引数要素のデータ</引数要素> : </DBA_IN_DATA> <DBA_OUT_DATA> <DBA_ResultSetNo>SQLリターン値</DBA_ResultSetNo> <DBA_ResultSetXmlNo>検索結果の件数</DBA_ResultSetXmlNo> <DBA_ResultSetName> <DBA_ResultColumnName cid="列番号">列の名称</DBA_ResultColumnName> : </DBA_ResultSetName> <DBA_ResultSet lid="行番号"> <DBA_ResultColumn cid="列番号">該当行n列目の検索結果</DBA_ResultColumn> : </DBA_ResultSet> : </DBA_OUT_DATA> </SQL識別子> </DBA_MULTI_SQL> : </DBadapter> |
なお,要求電文で入力情報が0(ゼロ)の場合,応答電文は次の形式で出力されます。
応答電文の要素と属性について次の表に示します。
表3-13 応答電文の要素と属性(DBアダプタ用のサービスリクエスタ)
要素名・属性名 | 種別 | 内容と設定値 | 格納される値の型 | 省略 |
---|---|---|---|---|
DBadapter | 要素 | ルート要素です。次の下位要素があります。
|
− | × |
DBA_MULTI_SQL | 要素 | サービスリクエスタからの複数のSQL文の実行要求に対する応答であることを示す要素です。SQL識別子以降の下位要素に入力情報(要求電文での設定情報)および出力情報(SQLの実行結果情報)が出力されます。 要求電文で記述したDBA_MULTI_SQL要素と同数のDBA_MULTI_SQL要素が出力されます。 |
− | ×※1 |
SQL識別子 | 要素 | 下位の要素「DBA_IN_DATA」および「DBA_OUT_DATA」に,それぞれ入力情報(要求電文での設定情報)および出力情報(SQLの実行結果情報)が格納されます。 SQL識別子は,要求電文に設定したSQL識別子です。 なお,属性out_maxOccurs(検索結果出力最大件数)は,要求電文で設定した場合にだけ格納されます。 |
− | × |
DBA_IN_DATA | 要素 | 要求電文で設定した入力情報がこの要素の下位要素に格納されます。 | − | × |
DBA_OUT_DATA | 要素 | 下位の要素にSQL実行時の出力情報が格納されます。実行したSQLによって,格納される出力情報が異なります。
|
− | × |
DBA_ResultSetNo | 要素 | 実行したSQLによって,格納される出力情報が異なります。
|
xsd:int | × |
DBA_ResultSetXmlNo | 要素 | 実行したSQLがSELECTの場合,実際の検索結果の件数(DBA_ResultSetNoの値)のうち,この応答電文に格納されている検索結果の件数が格納されます。 DBA_ResultSetNoの値が,要求電文またはSQLオペレーション定義ファイルのout_maxOccursに指定した値よりも大きい場合,out_maxOccursに指定した値が格納されます。 また,格納される要素の値が2,147,483,647を超えた場合,2,147,483,647が格納されます。 |
xsd:int | ○ |
DBA_ResultSetName | 要素 | 実行したSQLがSELECTの場合,検索結果の列の名称が,下位要素DBA_ResultColumnNameに格納されます。 なお,検索結果が0件の場合,この要素は格納されません。 |
− | △ |
DBA_ResultColumnName | 要素 | 実行したSQLがSELECTの場合,該当する列の名称が格納されます。 なお,結果の列がデータベースの列の場合,「列名」の形式で設定されます。また,結果の列名が取得されない場合,SQLを発行した先のデータベースの仕様に従った名称が返されます。 属性にcidがあります。 |
xsd:string | △ |
cid | 属性 | DBA_ResultColumnNameに格納される値の列番号を示します。 | xsd:int | |
DBA_ResultSet | 要素 | 実行したSQLがSELECTの場合,一行ごとの結果情報が,下位要素のDBA_ResultColumnに格納されます。なお,検索結果が0件の場合,この要素は格納されません。 属性にlidがあります。 |
− | △ |
lid | 属性 | DBA_ResultSetに格納される値の行番号を示します。 また,格納される要素の値が2,147,483,647を超えた場合,2,147,483,647が格納されます。 |
xsd:int | |
DBA_ResultColumn | 要素 | 該当する行(DBA_ResultSetで示される行)のn列目の検索結果が格納されます。※2 属性にcidおよびnulldataがあります。 |
xsd:string | △ |
cid | 属性 | DBA_ResultColumnに格納される値の列番号を示します。 | xsd:int | |
nulldata | 属性 | DBA_ResultColumnに格納されたデータがnullであるかどうかを示します。 nullの場合「Y」が設定されます。nullでない場合,この属性は設定されません。 |
xsd:string |
SELECT VARCHAR_FORMAT(c_ts, 'YYYY-MONTH-DD HH:MI') FROM 表名 |
All Rights Reserved. Copyright (C) 2012, 2019, Hitachi, Ltd.