1.3.5 SQLのデータ型とCOBOL言語のデータ記述の対応

SQLのデータ型とCOBOL言語のデータ記述の対応を次の表に示します。なお,表中のデータ記述は,次のように表記することもできます。

PICTURE:PIC
COMPUTATIONAL:COMP
COMPUTATIONAL-n:COMP-n
9(n):99…9

X(n):XX…X

データの受け渡しには,データ型およびデータ長(精度および位取りも含む)が一致する埋め込み変数を使用してください。

表1-15 SQLのデータ型とCOBOL言語のデータ記述の対応

項番SQLのデータ型COBOL言語のデータ記述項目の記述備考
1SMALLINTL1 基本項目名
PICTURE S9(4)
COMPUTATIONAL.
基本項目または独立項目
2INTEGERL1 基本項目名
PICTURE S9(9)
COMPUTATIONAL.
基本項目または独立項目
3DECIMAL〔(p〔,s〕)〕L1 基本項目名
PICTURE S9(p-s)[V9(s)]
COMPUTATIONAL-3.
基本項目または独立項目1≦p≦29※5,0≦s≦p,p=sの場合,SV9(s)とします。
s=0の場合,[V9(s)]を省略します。
4CHARACTER〔(n)〕L1 基本項目名
PICTURE X(n).※1
基本項目または独立項目1≦n≦32000
5VARCHAR(n)L2 集団項目名.
L3 基本項目名1
PICTURE S9(4)
COMPUTATIONAL.
L3 基本項目名2
PICTURE X(n).※1
二つの基本項目から構成される集団項目
基本項目名1:文字列長
基本項目名2:文字列
1≦n≦32000
6TIMESTAMP〔(p)〕L1 基本項目名
PICTURE X(n).※2※3
基本項目または独立項目
  • p=0の場合:n=19
  • p=2の場合:n=22
  • p=4の場合:n=24
  • p=6の場合:n=26
7ROWこの表中のデータ項目と集団項目の組み合わせ※4複数の基本項目から構成される集団項目
L1 基本項目名
PICTURE X(n).※1
基本項目または独立項目nは行長
8ROWIDL1 基本項目名
PICTURE X(12).
基本項目または独立項目
9標識変数L1 基本項目名
PICTURE S9(4)
COMPUTATIONAL.
基本項目または独立項目
(凡例)
-:該当しません。
L1:レベル番号01~49,または77
n:長さ(バイト)
p:精度(全体のけた数)
s:位取り(小数秒のけた数)
注※1
Xの代わりに9を使用して定義できます。9を使用して定義した場合,数字以外の文字を含む文字列の代入や,検索結果として受け取ったときの動作はCOBOL言語のコンパイラの実装に依存します。
注※2
Xの代わりに9を使用して定義した場合,プリプロセス時にエラーとなりませんが,使用しないでください。
注※3
定数表現(TIMESTAMP'YYYY-MM-DD hh:mm:ss〔.nn…n〕')のYYYY-MM-DD hh:mm:ss〔.nn…n〕の部分を格納します。
注※4
行単位(ROW指定)の検索,または更新をする場合,ROWに対する埋め込み変数中の時刻印データ型の部分は(7+(p÷2))バイトです。また,形式はX'YYYYMMDDhhmmss〔nn…n〕'にしてください。
注※5
使用できる精度の上限は,COBOL言語のコンパイラの仕様に依存します。