すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB for OceanBase:データ型変換

最終更新日:Jan 19, 2025

このトピックでは、Oracle データベースから OceanBase Database の Oracle テナントへのデータ移行中にサポートされるデータ型変換ペアについて説明します。

サポートされるデータ型

Oracle データベース

OceanBase Database の Oracle テナント

説明

INTEGER

NUMBER(38,0)

INT

NUMBER(38,0)

SMALLINT

NUMBER(38,0)

BINARY_FLOAT

BINARY_FLOAT

バイナリ精度の浮動小数点数。32 桁の単精度浮動小数点数のデータ型です。このデータ型は、Oracle データベースと OceanBase Database の Oracle テナントで一貫性があります。

BINARY_DOUBLE

BINARY_DOUBLE

バイナリ精度の浮動小数点数。64 桁の倍精度浮動小数点数のデータ型です。このデータ型は、Oracle データベースと OceanBase Database の Oracle テナントで一貫性があります。

DECIMAL(p,s)

NUMBER(p,s)

DEC(p,s)

NUMBER(p,s)

NUMERIC(p,s)

NUMBER(p,s)

REAL(p,s)

NUMBER(p,s)

FLOAT (p)

FLOAT (p)

NUMBER データ型のサブタイプです。バイナリ精度の範囲: [1,126]。FLOAT は浮動小数点数を示すものではありません。

このデータ型は、Oracle データベースと OceanBase Database の Oracle テナントで一貫性があります。

NUMBER[(p,s)]

NUMBER(p,s)

OceanBase Database の Oracle テナントでは、このデータ型は、10 進精度の可変長固定小数点数または浮動小数点数を格納します。浮動小数点数のデータ型の場合、NUMBER データ型には p パラメーターと s パラメーターは含まれません。

Oracle データベースでは、p の範囲は 1 ~ 38、s の範囲は -84 ~ 127 です。

NCHAR(size)

NCHAR(size)

size パラメーターの値の範囲は [1, 2000] です。デフォルト値と最小値は 1 です。ストレージサイズは size バイトの 2 倍です。

CHAR (size [BYTE | CHAR])

CHAR (size [BYTE | CHAR])

size パラメーターの値の範囲は [1, 2000] です。デフォルト値と最小値は 1 です。ストレージサイズは size バイトまたは文字数です。

CHARACTER(n)

CHAR(n)

NVARCHAR2(size)

NVARCHAR2(size)

size パラメーターの値の範囲は [1, 32767] です。バイトストレージサイズは、入力された文字数の 2 倍です。

VARCHAR2(size [BYTE | CHAR])

VARCHAR2(size [BYTE | CHAR])

size パラメーターの値の範囲は [1, 32767] です。ストレージサイズは、size バイトまたは文字数ではなく、入力されたバイトまたは文字の実際の長さです。

VARCHAR(size)

VARCHAR2(size)

RAW(size)

RAW(size)

OceanBase Database の Oracle テナントでは、このデータ型はデータをバイト単位で格納します。RAW 列の最大長は 2,000 バイトです。RAW PL 変数には、最大 32,767 バイトのデータを格納できます。

Oracle データベースでは、RAW データベース列には最大 2,000 バイトのデータを格納できます。

LONG

CLOB

OceanBase Database の Oracle テナントでは、CLOB には最大 48 MB のデータを格納できます。

Oracle データベースでは、LONG 値の最大長は 2^31 - 1 バイト、つまり 2 ギガバイトです。

LONG RAW

BLOB

OceanBase Database の Oracle テナントでは、BLOB は最大 48 MB のバイナリデータを格納します。

OceanBase Database の Oracle テナントでは、BLOB には最大 48 MB のバイナリデータを格納できます。

Oracle データベースでは、LONG RAW 値の最大長は 2^31 - 1 バイト、つまり 2 ギガバイトです。

ROWID

ROWID

テーブル内の行の一意のアドレス。Base64 文字列として表されます。

UROWID

UROWID

インデックス構成テーブル内の行の論理アドレス。Base64 文字列として表されます。

TIMESTAMP (fractional_seconds_precision)

TIMESTAMP (fractional_seconds_precision)

OceanBase Database の Oracle テナントでは、精度と範囲は scale パラメーターの値によって決まります。値の範囲: [0,9]。デフォルト値: 6。最小値 0 はタイムスタンプが秒単位まで正確であることを示し、最大値 9 はタイムスタンプがナノ秒単位まで正確であることを示し、デフォルト値 6 はタイムスタンプがマイクロ秒単位まで正確であることを示します。

Oracle データベースでは、サイズは精度に応じて 7 バイトまたは 11 バイトです。

TIMESTAMP [(fractional_seconds_precision)] WITH TIME ZONE

TIMESTAMP [(fractional_seconds_precision)] WITH TIME ZONE

OceanBase Database の Oracle テナントでは、精度と範囲は scale パラメーターの値によって決まります。値の範囲: [0,9]。デフォルト値: 6。最小値 0 はタイムスタンプが秒単位まで正確であることを示し、最大値 9 はタイムスタンプがナノ秒単位まで正確であることを示し、デフォルト値 6 はタイムスタンプがマイクロ秒単位まで正確であることを示します。

Oracle データベースでは、サイズは 13 バイトで固定です。

TIMESTAMP [(fractional_seconds_precision)] WITH LOCAL TIME ZONE

TIMESTAMP[(fractional_seconds_precision)] WITH LOCAL TIME ZONE

DATE

DATE

OceanBase Database の Oracle テナントでは、値の範囲は [0001-01-01 00:00:00, 9999-12-31 23:59:59] です。

Oracle データベースでは、有効な日付範囲は [紀元前 4712 年 1 月 1 日、紀元 9999 年 12 月 31 日] です。サイズは 7 バイトで固定です。

INTERVAL YEAR [(year_precision)] TO MONTH

INTERVAL YEAR [(year_precision)] TO MONTH

5 バイト

INTERVAL DAY [(day_precision)] TO SECOND [(fractional_seconds_precision)]

INTERVAL DAY [(day_precision)] TO SECOND [(fractional_seconds_precision)]

11 バイト

BLOB

BLOB

CLOB

CLOB

NCLOB

CLOB

サポートされていないデータ型

Oracle データベース

OceanBase Database の Oracle テナント

TIMESTAMP_UNCONSTRAINED

-

TIMESTAMP_TZ_UNCONSTRAINED

-

TIMESTAMP_LTZ_UNCONSTRAINED

-

YMINTERVAL_UNCONSTRAINED

-

DSINTERVAL_UNCONSTRAINED

-

YEAR

-

MONTH

-

DAY

-

HOUR

-

MINUTE

-

SECOND

-

TIMEZONE_HOUR

-

TIMEZONE_MINUTE

-

TIMEZONE_REGION

-

TIMEZONE_ABBR

-