Rational Developer for System z
PL/I for Windows, Version 7.6, プログラミング・ガイド

SQL および PL/I の同等なデータ型の判別

ホスト変数の基本 SQLTYPE および SQLLEN は、次の表のとおりに決定されます。ホスト変数が標識変数とともに指定される場合、SQLTYPE は基本 SQLTYPE に 1 を 加えた値です。

表 4. PL/I 宣言から生成される SQL データ型
    PL/I データ型 ホスト変数の SQLTYPE ホスト変数の SQLLEN SQL データ型
BIN FIXED(n)、n < 16 500 2 SMALLINT
BIN FIXED(n)、n の範囲は 16 から 31 496 4 INTEGER
DEC FIXED(p,s)   484   p (バイト 1) s (バイト 2) DECIMAL(p,s)
BIN FLOAT(p)、22 <= p <= 53 480 8 FLOAT
DEC FLOAT(m)、7 <= m <= 16 480 8 FLOAT
CHAR(n)、1 <= n <= 254 452 n CHAR(n)
CHAR(n) VARYING、1 <= n <= 4000 448 n VARCHAR(n)
CHAR(n) VARYING、n > 4000 456 n LONG VARCHAR
GRAPHIC(n)、1 <= n <= 127 468 n GRAPHIC(n)
GRAPHIC(n) VARYING、1 <= n <= 2000 464 n VARGRAPHIC(n)
GRAPHIC(n) VARYING、n > 2000 472 n LONG VARGRAPHIC

SQL には、単一精度または拡張精度の浮動小数点データ型が存在しないため、データ挿入に、同データ型のホスト変数を使用すると、ホスト変数は、倍精度浮動小数点の一時値に変換され、その一時値がデータベースに挿入されます。単一精度または拡張精度の浮動小数点ホスト変数を使用してデータ検索を行うと、倍精度浮動小数点の一時値が、データベースに対するデータ検索に使用され、一時変数の結果がホスト変数に代入されます。

次の表を使用して、特定の SQL データ型と同等な PL/I データ型 を判別できます。

表 5. SQL データ型と PL/I 宣言の対応
SQL データ型 同等な PL/I 宣言
SMALLINT BIN FIXED(15)
INTEGER BIN FIXED(31)
DECIMAL(p,s) DEC FIXED(p) または DEC FIXED(p,s) p = precision および s = scale; 1 <= p <= 31 および 0 <= s <= p
FLOAT BIN FLOAT(p) または DEC FLOAT(m) 22 <= p <= 53 7 <= m <= 16
CHAR(n) CHAR(n) 1 <= n <= 254
VARCHAR(n) CHAR(n) VAR 1 <= n <= 4000
LONG VARCHAR CHAR(n) VAR n > 4000
GRAPHIC(n) GRAPHIC(n) n は、2 バイト文字の数を示す (バイト数ではない) 1 から 127 の正整数
VARGRAPHIC(n) GRAPHIC(n) VAR n は、2 バイト文字の数を示す (バイト数ではない) 正整数。 1 <= n <= 2000
LONG VARGRAPHIC GRAPHIC(n) VAR n > 2000
DATE CHAR(n) n の最小値は 10
TIME CHAR(n) n の最小値は 8
TIMESTAMP CHAR(n) n の最小値は 26

Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)