Hitachi

ノンストップデータベース HiRDB Version 10 UAP開発ガイド


18.3.5 出力変数の設定(ネイティブインタフェース版限定)

1行検索,及びCALL文のOUTパラメタで使用する出力変数は,出力変数の初期値によって,サーバへ実行要求をするときのSQL記述領域に設定するデータの長さが変わります。各データ型の初期値とSQL記述領域に設定されるデータの長さを次の表に示します。

表18‒5 各データ型の初期値とSQL記述領域に設定されるデータの長さ

データ型

初期値

SQL記述領域に設定されるデータの長さ

HiRDBCHAR

変数 = null;

30,000バイト

変数 = new HiRDBCHAR(int n);

nバイト(1≦n≦30,000)

変数 = new HiRDBCHAR(String t);

tの長さ(t.getBytes()で得られるbyte配列の長さ)

HiRDBVARCHAR

変数 = null;

32,000バイト

変数 = new HiRDBVARCHAR(int n);

nバイト(1≦n≦32,000)

変数 = new HiRDBVARCHAR(String t)

tの長さ(t.getBytes()で得られるbyte配列の長さ)

HiRDBNCHAR

変数 = null;

30,000バイト(全角15,000文字)

変数 = new HiRDBNCHAR(int n);

(n*2)バイト(全角n文字)(1≦n≦15,000)

変数 = new HiRDBNCHAR(String t)

tの長さ(t.getBytes()で得られる(byte配列/2)の長さ)

HiRDBNVARCHAR

変数 = null;

32,000バイト(全角16,000文字)

変数 = new HiRDBNVARCHAR(int n);

(n*2)バイト(全角n文字)(1≦n≦16,000)

変数 = new HiRDBNVARCHAR(String t)

tの長さ(t.getBytes()で得られる(byte配列/2)の長さ)

HiRDBMCHAR

変数 = null;

30,000バイト

変数 = new HiRDBMCHAR(int n);

nバイト(1≦n≦30,000)

変数 = new HiRDBMCHAR(String t)

tの長さ(t.getBytes()で得られるbyte配列の長さ)

HiRDBMVARCHAR

変数 = null;

32,000バイト

変数 = new HiRDBMVARCHAR(int n);

nバイト(1≦n≦32,000)

変数 = new HiRDBMVARCHAR(String t)

tの長さ(t.getBytes()で得られるbyte配列の長さ)

HiRDBDECIMAL

変数 = null;

精度15,位取り0

変数 = new HiRDBDECIMAL(int p,int s);

精度p,位取りs(1≦p≦38,0≦s≦p)

変数 = new HiRDBDECIMAL(String t)

精度は,tから符号及びピリオドを除いた文字列長です。位取りは,ピリオド以降の文字列長(ピリオドは含まない)。

変数 = newHiRDBDECIMAL(java.math.BigDecimal t)

精度は,tからtoString()で取り出した文字列の符号及びピリオドを除いた文字列長です。位取りは,BigDecimalオブジェクトのscale()メソッドで取り出した値です。

HiRDBBLOB

変数 = null;

1メガバイト

変数 = new HiRDBBLOB(int n);

nバイト(1≦n≦2,147,483,647)

変数 = new HiRDBBLOB(byte[] t)

tの長さ

HiRDBBINARY

変数 = null;

1メガバイト

変数 = new HiRDBBINARY(int n);

nバイト(1≦n≦2,147,483,647)

変数 = new HiRDBBINARY(byte[] t)

tの長さ

Java.math.BigDecimal

変数 = null;

精度15,位取り0

変数 = new java.math.BigDecimal;

精度には,BigDecimalオブジェクトからtoString()で取り出した文字列の符号及びピリオドを除いた文字列長を設定します。位取りには,scale()メソッドで取り出した値を設定します。

byte[]

変数 = null;

1メガバイト

変数 = new byte[int n]

nバイト(1≦n≦2,147,483,647)