2.7.4 SQL連絡領域の構成と内容
DMLを実行すると,HiRDB/SDはDMLが正常に実行されたかどうかを示す情報をUAPに返します。これらの情報を受け取るための領域をSQL連絡領域といいます。SQLCODE,SQLWARN1〜SQLWARNFは,SQL連絡領域に格納されます。
- 〈この項の構成〉
(1) SQL連絡領域の構成
SQL連絡領域の構成を次の図に示します。
|
- 注
-
-
( )内は領域の長さ(単位:バイト)を示しています。
-
SQLCABC,SQLCODE,およびSQLERRDの長さは,long型のサイズになります。
-
(2) SQL連絡領域の内容
SQL連絡領域の内容については,マニュアル「HiRDB UAP開発ガイド」の「SQL連絡領域の構成と内容」の「SQL連絡領域の内容」を参照してください。
マニュアル「HiRDB UAP開発ガイド」の記載内容と異なる部分だけ,次の表に示します。
レベル番号※1 |
連絡領域名 |
データ型 |
長さ(バイト) |
内容 |
---|---|---|---|---|
2 |
SQLCODE |
long |
8 |
DMLの実行結果を示すSQLCODEが返される領域です。 |
2 |
SQLERRM |
− |
256 |
DMLの実行結果を示すメッセージの情報が返される領域です。 |
3 |
SQLERRML |
short |
2 |
SQLERRMC領域に返されるメッセージの長さが返される領域です。 |
3 |
SQLERRMC |
char |
254 |
SQLCODEに対応するメッセージが返される領域です。 SQLCODEとメッセージの対応については,マニュアル「HiRDB メッセージ」の「メッセージの記述形式」の「メッセージに関する注意事項」を参照してください。 |
2 |
SQLERRD |
long |
8×6 |
HiRDBの内部状態を示す領域で,データ型がlongの6個の配列です。
|
- (凡例)
-
−:該当しません。
- 注※1
-
レベル番号は,SQL連絡領域の包含関係を示しています。例えば,レベル番号1の連絡領域はレベル番号2の連絡領域で構成されることを示しています。
- 注※2
-
SDBデータベース操作のアクセス件数については,マニュアル「HiRDB 構造型データベース機能」の「監査証跡表の列に格納される情報についての留意事項(SDBデータベース操作イベントの場合)」の「SDBデータベース操作イベントのアクセス件数」の表を参照してください。
(3) SQL連絡領域の展開
SQL連絡領域のデータ記述項は,pdsdbcblコマンドによるプリプロセスの際に,登録集原文のCOPY文がポストソースに自動的に出力されます。そのため,SQL連絡領域のデータ記述項を,COBOLソースプログラム中に記述する必要はありません。
登録集原文によって展開されるデータ記述項については,マニュアル「HiRDB UAP開発ガイド」の「SQL連絡領域の展開」を参照してください。