異種のデータベースにコピーされるオブジェクトのデータ・タイプ・マッピング

ソース・データベースから異種のターゲット・データベースにデータベース表をコピーすると、 ソース・データ・タイプは、ソース・データ・タイプに最も良く似たターゲット・データ・タイプにマップされます。

下表では、ターゲット・データ・タイプへのソース・データ・タイプのデフォルト・マッピングを示します。 ターゲット・データ・タイプでオプションのデータ・タイプが示されている場合は、 「データベース・オブジェクトの貼り付け」ウィザードで、マップされるデータ・タイプをデフォルトから変更できます。

注: 現在のところ、Oracle ルーチンおよび DB2® for Linux, UNIX, and Windows PL/SQL ルーチン内のデータ・タイプはマップされません。 正常にコピーするには、ソース・ルーチン内のデータ・タイプが、ターゲット・データベースで有効なデータ・タイプである必要があります。

表 1 では、Oracle ソース・データベースから DB2 for Linux, UNIX, and Windows ターゲット・データベースにオブジェクトをコピーする際の、デフォルトでのデータ・タイプのマッピングを示します。

表 1. Oracle データ・タイプから DB2 for Linux, UNIX, and Windows データ・タイプへのデフォルトのマッピング
Oracle データ・タイプ DB2 for Linux, UNIX, and Windows のデータ・タイプ
CHAR(n)
1 ≤ n ≤ 254 の場合:
   CHAR(n)
   オプション  VARCHAR(n)

255 ≤ n ≤ 2000 の場合:
   VARCHAR(n)
NCHAR(n)
1 ≤ n ≤ 127 の場合:
   GRAPHIC(n)
   オプション  VARGRAPHIC(n)

128 ≤ n ≤ 2000 の場合:
   VARGRAPHIC(n)
NVARCHAR2(l)
VARGRAPHIC(l)
VARCHAR(l)
VARCHAR2(l)
VARCHAR2(l)
VARCHAR2(l)
LONG
CLOB
RAW(l)
VARCHAR (l) FOR BIT DATA
LONG RAW
BLOB
NUMBER
NUMBER
オプション  SMALLINT
オプション  NUMBER(p , s)  
NUMBER(p , s)
1 ≤ p ≤ 31 の場合:
   NUMBER(p , 0) (s < 0 の場合)
   NUMBER(p , s) (0 ≤ s ≤ 31 の場合)
   オプション  INTEGER

32 ≤ p ≤ 38 の場合:
   DECFLOAT(34)
   オプション  NUMBER(p , 0) (s < 0 の場合)
   オプション  INTEGER (s = 0 の場合)
   オプション  NUMBER(p , s) (0 ≤ s ≤ 38 の場合)
NUMERIC
DECIMAL(5,0)
FLOAT
DOUBLE
BINARY_FLOAT
FLOAT(53)
BINARY_DOUBLE
DOUBLE
DECIMAL
NUMBER
DECIMAL(p , s)
NUMBER(p , s)
INTEGER
DECFLOAT(34)
オプション  SMALLINT
PLS_INTEGER
INTEGER
INT   NOT NULL
DECFLOAT(34)   NOT NULL
SMALLINT
DECFLOAT(34)
REAL
DOUBLE
DOUBLE PRECISION
DOUBLE
DATE
TIMESTAMP
オプション  DATE
オプション  TIME
TIMESTAMP
TIMESTAMP
INTERVAL YEAR TO MONTH
CHAR(50)
INTERVAL DAY TO SECOND
CHAR(50)
BFILE
BLOB(1048576) DEFAULT   NULL
BLOB
BLOB(1048576)
CLOB
CLOB(100000000)
NCLOB
DBCLOB(100000000)
ROWID
CHAR(18)
UROWID
CHAR(18)
BOOLEAN
INTEGER
XMLTYPE
XML

表 2 では、DB2 for Linux, UNIX, and Windows ソース・データベースから Oracle ターゲット・データベースにオブジェクトをコピーする場合のデータ・タイプのデフォルト・マッピングを示します。

表 2. DB2 for Linux, UNIX, and Windows データ・タイプから Oracle データ・タイプへのデフォルトのマッピング
DB2 for Linux, UNIX, and Windows のデータ・タイプ Oracle データ・タイプ
GRAPHIC(l)
NCHAR(l)
CHAR FOR BIT DATA(l)
RAW(l)
VARGRAPHIC(l)
NVARCHAR2(l)
LONG VARGRAPHIC
NVARCHAR2(l)
CHAR(l)
CHAR(l)
VARCHAR(l)
VARCHAR2(l)
VARCHAR2(l)
VARCHAR2(l)
LONG VARCHAR(l)
VARCHAR2(l)
NUMBER(l)
INTEGER(l)
NUMERIC(l)
NUMERIC(l)
DECFLOAT(l)
NUMBER(l)
BIGINT(l)
NUMBER(l)
INTEGER
INTEGER
オプション  SMALLINT
SMALLINT
SMALLINT
DATE
DATE
BOOLEAN
BOOLEAN
オプション  SMALLINT
RID_BIT
ROWID
BLOB
BLOB
XML
XMLTYPE
CLOB
CLOB
DBCLOB
NCLOB
REAL
FLOAT
FLOAT
FLOAT
DOUBLE
DOUBLE PRECISION
DOUBLE PRECISION
DOUBLE PRECISION
TIMESTAMP
TIMESTAMP
TIME
TIMESTAMP
DECIMAL
DECIMAL
オプション  INTEGER
オプション  SMALLINT
LONG VARCHAR FOR BIT DATA
RAW
VARCHAR FOR BIT DATA
RAW

表 3 は、DB2 for Linux, UNIX, and Windows ソース・データベースから DB2 for z/OS® ターゲット・データベースにオブジェクトをコピーする場合のデータ・タイプのデフォルトのマッピングを示しています。

表 3. DB2 for Linux, UNIX, and Windows データ・タイプから DB2 for z/OS データ・タイプへのデフォルトのマッピング
DB2 for Linux, UNIX, and Windows のデータ・タイプ DB2 for z/OS のデータ・タイプ
GRAPHIC(l)
GRAPHIC(l)
CHAR FOR BIT DATA(l)
CHAR FOR BIT DATA(l)
VARGRAPHIC(l)
VARGRAPHIC(l)
LONG VARGRAPHIC
VARGRAPHIC(l)
CHAR(l)
CHAR(l)
VARCHAR(l)
VARCHAR(l)
VARCHAR2(l)
VARCHAR(l)
LONG VARCHAR
LONG VARCHAR
NUMBER(l)
INTEGER
NUMERIC(l)
NUMERIC(l)
DECFLOAT(l)
DECFLOAT(l)
BIGINT
BIGINT
INTEGER
INTEGER
SMALLINT
SMALLINT
DATE
DATE
BLOB
BLOB
XML
XML
CLOB
CLOB
DBCLOB
DBCLOB
REAL
REAL
FLOAT
FLOAT
DOUBLE
DOUBLE
DOUBLE PRECISION
DOUBLE PRECISION
TIMESTAMP
TIMESTAMP
TIME
TIME
DECIMAL(p , s)
DECIMAL(p , s)
LONG VARCHAR FOR BIT DATA
LONG VARCHAR FOR BIT DATA
VARCHAR FOR BIT DATA
VARCHAR FOR BIT DATA

表 4 は、DB2 for z/OS ソース・データベースから DB2 for Linux, UNIX, and Windows ターゲット・データベースにオブジェクトをコピーする場合のデータ・タイプのデフォルトのマッピングを示しています。

表 4. DB2 for z/OS データ・タイプから DB2 for Linux, UNIX, and Windows データ・タイプへのデフォルトのマッピング
DB2 for z/OS のデータ・タイプ DB2 for Linux, UNIX, and Windows のデータ・タイプ
GRAPHIC(l)
GRAPHIC(l)
CHAR FOR BIT DATA(l)
CHAR FOR BIT DATA(l)
VARGRAPHIC(l)
VARGRAPHIC(l)
CHAR(l)
CHAR(l)
VARCHAR(l)
VARCHAR(l)
LONG VARCHAR
LONG VARCHAR
NUMERIC(l)
NUMERIC(l)
DECFLOAT(l)
DECFLOAT(l)
BIGINT
BIGINT
INTEGER
INTEGER
SMALLINT
SMALLINT
DATE
DATE
BLOB
BLOB
XML
XML
CLOB
CLOB
DBCLOB
DBCLOB
REAL
REAL
FLOAT
FLOAT
DOUBLE
DOUBLE
DOUBLE PRECISION
DOUBLE PRECISION
TIMESTAMP
TIMESTAMP
TIME
TIME
DECIMAL(p , s)
DECIMAL(p , s)
LONG VARCHAR FOR BIT DATA
LONG VARCHAR FOR BIT DATA
VARCHAR FOR BIT DATA
VARCHAR FOR BIT DATA

フィードバック