ヘッダーをスキップ

Oracle9i Heterogeneous Connectivity管理者ガイド
リリース2(9.2)

部品番号B13816-01
Go To Table Of Contents
目次
Go To Index
索引

Go to previous page Go to next page

B
データ型のマッピング

Oracle9i では、ANSIデータ型がODBCおよびOLE DBインタフェースを介して、サポートされているOracleデータ型にマップされます。 問合せの結果が戻されるときに、Oracle9i により、ODBCまたはOLE DBのデータ型がOracleデータ型に変換されます。

この付録では、OracleでOracle以外のシステムからデータを取得する際の、ODBCおよびOLE DBインタフェースを介したANSIデータ型とサポート対象のOracleデータ型とのマッピングを表形式で示します。

この付録の内容は、次のとおりです。

ODBCインタフェースを介したANSIデータ型からOracleデータ型へのマッピング

表B-1 ODBCインタフェースを介したANSIデータ型からOracleデータ型へのマッピング
ANSI ODBC Oracle

NUMERIC(19,0)

SQL_BIGINT

NUMBER(19,0)

該当なし

SQL_BINARY

RAW

CHAR

SQL_CHAR

CHAR

DATE

SQL_DATE

DATE

DECIMAL(p,s)

SQL_DECIMAL(p,s)

NUMBER(p,s)

DOUBLE PRECISION

SQL_DOUBLE

FLOAT(49)

FLOAT

SQL_FLOAT

FLOAT(49)

INTEGER

SQL_INTEGER

NUMBER(10)脚注1

該当なし

SQL_LONGVARBINARY

LONG RAW

該当なし

SQL_LONGVARCHAR

LONG脚注2

REAL

SQL_REAL

FLOAT(23)

SMALLINT

SQL_SMALLINT

NUMBER(5)

TIME

SQL_TIME

DATE

TIMESTAMP

SQL_TIMESTAMP

DATE

NUMERIC(3,0)

SQL_TINYINT

NUMBER(3)

VARCHAR

SQL_VARCHAR

VARCHAR

1 ANSIのINTEGERデータ型は、場合により精度38にマップ可能ですが、通常は精度10にマップされます。
2 ANSI SQL実装でVARCHARデータの最大長に大きな値が定義されている場合は、ANSIのVARCHARSQL_LONGVARCHARおよびOracleのLONGにマップされる可能性があります。 これは、OLE DBのDBTYPE_STRING(LONG属性)の場合も同じです。


注意:

この表では、ODBCデータ型を等価のANSIデータ型およびOracleデータ型にマップしています。 ANSI SQL規格では、数値の精度と文字データの最大長の定義が個々の実装に委ねられているため、ANSIデータ型との等価性が厳密に保証されない場合があります。 次の表は、ANSI SQLの標準的な実装においてANSIデータ型とODBCデータ型間で予想されるマッピングを示しています。


OLE DBインタフェースを介したANSIデータ型からOracleデータ型へのマッピング

表B-2 OLE DBインタフェースを介したANSIデータ型からOracleデータ型へのマッピング
ANSI OLE DB Oracle

NUMERIC(3,0)

DBTYPE_UI1

NUMBER(3)

NUMERIC(3,0)

DBTYPE_I1

NUMBER(3)

SMALLINT

DBTYPE_UI2

NUMBER(5)

SMALLINT

DBTYPE_I2

NUMBER(5)

NUMERIC(3,0)

DBTYPE_BOOL

NUMBER(5)

INTEGER

DBTYPE_UI4

NUMBER(10)

INTEGER

DBTYPE_I4

NUMBER(10)

NUMERIC(19,0)

DBTYPE_UI8

NUMBER(19,0)

NUMERIC(19,0)

DBTYPE_I8

NUMBER(19,0)

NUMERIC(p,s)

DBTYPE_NUMERIC(p,s)

NUMBER(p,s)

FLOAT

DBTYPE_R4

FLOAT(23)

DOUBLE PRECISION

DBTYPE_R8

FLOAT(49)

該当なし

DBTYPE_DECIMAL

FLOAT(49)

VARCHAR

DBTYPE_STR

VARCHAR2

VARCHAR

DBTYPE_WSTR

VARCHAR2

NUMERIC(19,0)

DBTYPE_CY

NUMBER(19,0)

DATE

DBTYPE_DBDATE

DATE

TIME

DBTYPE_DBTIME

DATE

TIMESTAMP

DBTYPE_TIMESTAMP

DATE

該当なし

DBTYPE_BYTES

RAW

該当なし

DBTYPE_BYTES(LONG属性)

LONG RAW

該当なし

DBTYPE_STRING(LONG属性)

LONG


Go to previous page Go to next page
Oracle
Copyright © 2001, 2002 Oracle Corporation.

All Rights Reserved.
Go To Table Of Contents
目次
Go To Index
索引