HiRDB External Data Access Version 8

[目次][索引][前へ][次へ]

4.2.1  HiRDBのデータ型との対応関係

外部サーバがHiRDBの場合,マッピング時のデータ型の対応関係を,表4-2および表4-3に示します。

表4-2 データ型の対応関係(外部サーバがHiRDBの場合)(1/2)

HiRDBのデータ型
(外部のDB)
 
HiRDBのデータ型
SMALLINT INTEGER DECIMAL(m,n)
1≦m≦29,0≦n≦m
SMALLFLTまたはREAL※1 FLOATまたはDOUBLE PRECISION※1 CHAR(n)
1≦n≦255
VARCHAR(n)
1≦n≦255
MCHAR(n)
1≦n≦255
MVARCHAR(n)
1≦n≦255
SMALLINT                
INTEGER                
DECIMAL(p,s)
1≦p≦29
0≦s≦p
    ※2※3            
SMALLFLTまたは
REAL
               
FLOATまたは
DOUBLE
PRECISION
               
CHAR(n)
1≦n≦255
          ※4      
CHAR(n)
256≦n≦30,000
                 
VARCHAR(n)
1≦n≦255
            ※4    
VARCHAR(n)
256≦n≦32,000
                 
MCHAR(n)
1≦n≦255
              ※4  
MCHAR(n)
256≦n≦30,000
                 
MVARCHAR(n)
1≦n≦255
                ※4
MVARCHAR(n)
256≦n≦32,000
                 
NCHAR(n)
1≦n≦127
                 
NCHAR(n)
128≦n≦15,000
                 
NVARCHAR(n)
1≦n≦127
                 
VARCHAR(n)
128≦n≦16,000
                 
DATE                  
TIME                  
TIMESTAMP(p)
p=0,2,4,または6
                 
INTERVAL
YEAR TO DAY
                 
INTERVAL
HOUR TO
SECOND
                 
BLOB                  
BINARY(n)
1≦n≦255
                 
BINARY(n)
256≦n≦32,000
                 
BINARY(n)
32,001≦n≦
2,147,483,647
                 

(凡例)
◎:推奨するデータ型です。
空白:マッピングできないデータ型です。

外部サーバ上の256バイト以上の列に対して,255バイトの文字列型を定義した場合,255バイトまでのデータしか取得できません。

注※1
表現できる値の精度が落ちる場合があります。HiRDBでの値の範囲および精度は,ハードウェアに依存します。

注※2
整数部のけた数がHiRDBのデータ型より小さい場合,エラーとなります。
小数部のけた数がHiRDBのデータ型より小さい場合,HiRDBのデータ型の小数部のけた数に合わせて,残りの小数部を切り捨てて取得します。
それ以外の場合,整数部または小数部のけた数がHiRDBのデータ型より大きいときは,HiRDBのデータ型のけた数に合わせて拡張した部分に,0を補って取得します。

注※3
pおよびsを省略して定義している場合,外部サーバによって省略時の精度,および位取りの仮定値が異なるので,それに従って,外部サーバでの精度(p),および位取り(s)をそれぞれ外部表定義での精度(m),および位取り(n)と一致させてください。省略時以外はDECIMAL(m,n)をDECIMAL(p,s)としてください。

注※4
外部サーバとHiRDBのデータ型の定義長を同じにしてください。
HiRDBのデータ型の定義長(長さnバイト:n≦255)が,外部サーバのデータ型の実長より短い場合,先頭のnバイトだけを取得します。
また,長い場合,HiRDBが固定長のデータ型のときは左詰めに挿入され,余りの部分に空白(各国文字列の場合は全角空白,文字列または混在文字列の場合は半角空白)を設定して取得します。
HiRDBが可変長のデータ型の場合,そのまま取得します。

 

表4-3 データ型の対応関係(外部サーバがHiRDBの場合)(2/2)

HiRDBのデータ型
(外部のDB)
 
HiRDBのデータ型
NCHAR(n)
1≦n≦127
NVARCHAR(n)
1≦n≦127
DATE TIME TIMESTAMP(p)
p=0,2,4,または6
INTERVAL YEAR TO DAY INTERVAL HOUR TO SECOND BINARY(n)
1≦n≦255
SMALLINT                
INTEGER                
DECIMAL(p,s)
1≦p≦29
0≦s≦p
               
SMALLFLTまたは
REAL
               
FLOATまたは
DOUBLE
PRECISION
               
CHAR(n)
1≦n≦255
               
CHAR(n)
256≦n≦30,000
               
VARCHAR(n)
1≦n≦255
               
VARCHAR(n)
256≦n≦32,000
               
MCHAR(n)
1≦n≦255
               
MCHAR(n)
256≦n≦30,000
               
MVARCHAR(n)
1≦n≦255
               
MVARCHAR(n)
256≦n≦32,000
               
NCHAR(n)
1≦n≦127
※1              
NCHAR(n)
128≦n≦15,000
               
NVARCHAR(n)
1≦n≦127
  ※1            
NVARCHAR(n)
128≦n≦16,000
               
DATE              
TIME              
TIMESTAMP(p)
p=0,2,4,または6
        ※2      
INTERVAL
YEAR TO DAY
             
INTERVAL
HOUR TO
SECOND
             
BLOB                
BINARY(n)
1≦n≦255
              ※1
BINARY(n)
256≦n≦32,000
               
BINARY(n)
32,001≦n≦
2,147,483,647
               

(凡例)
◎:推奨するデータ型です。
空白:マッピングできないデータ型です。

外部サーバ上の256バイト以上の列に対して,255バイトの文字列型を定義した場合,255バイトまでのデータしか取得できません。

注※1
外部サーバとHiRDBのデータ型の定義長を同じにしてください。
HiRDBのデータ型の定義長(長さnバイト:n≦255)が,外部サーバのデータ型の実長より短い場合,先頭のnバイトだけを取得します。
また,長い場合,HiRDBが固定長のデータ型のときは左詰めに挿入され,余りの部分に空白(各国文字列の場合は全角空白,文字列または混在文字列の場合は半角空白)を設定して取得します。
HiRDBが可変長のデータ型の場合,そのまま取得します。

注※2
外部サーバとHiRDBのデータ型の小数秒精度を同じにしてください。
HiRDBのデータ型の小数秒精度の方が低い場合,HiRDBのデータ型の精度に合わせて残りの小数秒部分を切り捨てて取得します。
また,高い場合,HiRDBのデータ型の精度に合わせて拡張した小数秒部分に,0を補って取得します。