スケーラブルデータベースサーバ HiRDB Version 8 SQLリファレンス

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

付録C.2 外部のDBがXDM/RD E2の場合

データ型の対応関係(外部のDBがXDM/RD E2の場合)を表C-3及び表C-4に示します。

表C-3 データ型の対応関係(外部のDBがXDM/RD E2の場合)(1/2)

XDM/RD E2のデータ型
(外部のDB)
HiRDBのデータ型
SMALLINT INTEGER DECIMAL(m,n)又は
NUMERIC(m,n)
SMALLFLT又はREAL※4 FLOAT又はDOUBLE PRECISION※4 CHAR(n)
1≦n≦255
VARCHAR(n)
1≦n≦255
MCHAR(n)
1≦n≦255
MVARCHAR(n)
1≦n≦255
1≦m≦29,0≦n≦m 30≦m≦38,0≦n≦m
SMALLINT                  
INTEGER                  
DECIMAL(p,s)
1≦p≦15,
0≦s≦15
    ※1※5※6              
LARGE DECIMAL(p,s)又はNUMERIC(p,s)
1≦p≦29,
0≦s≦p
    ※1※6              
SMALLFLT又はREAL                  
FLOAT又はDOUBLE PRECISION                  
CHAR(n)
1≦n≦255
            ※7      
CHAR(n)
256≦n
                   
VARCHAR(n)
1≦n≦255
              ※7    
VARCHAR(n)
256≦n
                   
LONG VARCHAR(n)
1≦n≦255
              ※2※7    
LONG VARCHAR(n)
256≦n
                   
MCHAR(n)
1≦n≦255
                ※7  
MCHAR(n)
256≦n
                   
MVARCHAR(n)
1≦n≦255
                  ※7
MVARCHAR(n)
256≦n
                   
LONG MVARCHAR(n)
1≦n≦255
                  ※2※7
LONG MVARCHAR(n)
256≦n
                   
NCHAR(n)
1≦n≦127
                   
NCHAR(n)
128≦n
                   
NVARCHAR(n)
1≦n≦127
                   
NVARCHAR(n)
128≦n
                   
LONG NVARCHAR(n)
1≦n≦127
                   
LONG NVARCHAR(n)
128≦n
                   
DATE                    
TIME                    
TIME(p)
p=0,2,4,又は6
                   
TIMESTAMP             ※3※7      
TIMESTAMP(p)
p=0,2,4,又は6
            ※3※7      
INTERVAL YEAR TO DAY                    
INTERVAL HOUR TO SECOND                    
INTERVAL HOUR TO SECOND(p)
p=0,2,4,又は6
                   
BLOB                    

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

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

注2
XDM/RD E2の列の文字コードがEBCDIK又はKEISの場合,2バイト文字を含む文字列のコード変換後のデータが,255バイトを超えるとエラーになります。

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

注※2
探索条件にLONG VARCHAR型,又はLONG MVARCHAR型の列を指定した場合,外部サーバでエラーとなることがあります。LONG VARCHAR型,及びLONG MVARCHAR型については,マニュアル「XDM E2系 XDM/RD E2 SQLリファレンス」を参照してください。

注※3
CHAR(n)(n=19,22,24,又は26)にマップしてください。HiRDBでは,日時の文字列の形式は,n=19の場合は'YYYY-MM-DD hh:mm:ss'に,n=22,24,又は26の場合は'YYYY-MM-DD hh:mm:ss.xxxxxx'(xはn=22の場合は2けた,24の場合は4けた,26の場合は6けた)になります。また,該当列に対して比較,演算をした場合,外部サーバでエラーとなったり,意図した結果が得られないことがあります。

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

注※5
演算の結果,精度が15けたを超える場合はエラーとなります。

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

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

    表C-4 データ型の対応関係(外部のDBがXDM/RD E2の場合)(2/2)

    XDM/RD E2のデータ型
    (外部の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≦15,
    0≦s≦15
                   
    LARGE DECIMAL(p,s)又はNUMERIC(p,s)
    1≦p≦29,
    0≦s≦p
                   
    SMALLFLT又はREAL                
    FLOAT又はDOUBLE PRECISION                
    CHAR(n)
    1≦n≦255
                   
    CHAR(n)
    256≦n
                   
    VARCHAR(n)
    1≦n≦255
                   
    VARCHAR(n)
    256≦n
                   
    LONG VARCHAR(n)
    1≦n≦255
                   
    LONG VARCHAR(n)
    256≦n
                   
    MCHAR(n)
    1≦n≦255
                   
    MCHAR(n)
    256≦n
                   
    MVARCHAR(n)
    1≦n≦255
                   
    MVARCHAR(n)
    256≦n
                   
    LONG MVARCHAR(n)
    1≦n≦255
                   
    LONG MVARCHAR(n)
    256≦n
                   
    NCHAR(n)
    1≦n≦127
    ※4              
    NCHAR(n)
    128≦n
                   
    NVARCHAR(n)
    1≦n≦127
      ※4            
    NVARCHAR(n)
    128≦n
                   
    LONG NVARCHAR(n)
    1≦n≦127
      ※1※4            
    LONG NVARCHAR(n)
    128≦n
                   
    DATE              
    TIME              
    TIME(p)
    p=0,2,4,又は6
          ※2        
    TIMESTAMP                
    TIMESTAMP(p)
    p=0,2,4,又は6
                   
    INTERVAL YEAR TO DAY              
    INTERVAL HOUR TO SECOND              
    INTERVAL HOUR TO SECOND(p)
    p=0,2,4,又は6
                ※3  
    BLOB                

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

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

注2
XDM/RD E2の列の文字コードがEBCDIK又はKEISの場合,2バイト文字を含む文字列のコード変換後のデータが,255バイトを超えるとエラーになります。

注※1
探索条件にLONG NVARCHAR型の列を指定した場合,外部サーバでエラーとなることがあります。LONG NVARCHAR型については,マニュアル「XDM E2系 XDM/RD E2 SQLリファレンス」を参照してください。

注※2
TIME型には,XDM/RD E2の精度pが0の場合だけマッピングできます。

注※3
INTERVAL HOUR TO SECOND型には,XDM/RD E2の精度pが0の場合だけマッピングできます。

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