Oracleのデータ型

文字列

CHAR

CHARは固定長文字列を格納するデータ型です。

CHAR[(size [BYTE|CHAR])]

最大長をsizeで指定することができます。

セマンティクスとしてBYTECHARのいずれかを指定することができます。BYTEを指定すると、バイト・セマンティクスとなり、sizeはバイト単位での指定となります。CHARを指定すると、キャラクタ・セマンティクスとなり、sizeは文字単位での指定となります。

NCHAR

NCHARはUnicodeによる固定長文字列を格納するデータ型です。

NCHAR[(size)]

最大長をsizeで指定することができます。

VARCHAR2

VARCHAR2は可変長文字列を格納するデータ型です。

VARCHAR2(size [BYTE|CHAR])

最大長をsizeで指定します。

セマンティクスとしてBYTECHARのいずれかを指定することができます。BYTEを指定すると、バイト・セマンティクスとなり、sizeはバイト単位での指定となります。CHARを指定すると、キャラクタ・セマンティクスとなり、sizeは文字単位での指定となります。

NVARCHAR2

NVARCHAR2はUnicodeによる可変長文字列を格納するデータ型です。

NVARCHAR2(size)

最大長をsizeで指定します。

数値

NUMBER

精度とスケールが指定された数値を格納するデータ型です。

NUMBER[(precision [,scale])]

精度をprecisionで指定することができます。指定できる範囲は、1 ≦ precision ≦ 38 です。precisionを省略した場合、精度は38桁となります。

スケールをscaleで指定することができます。指定できる範囲は、-84 ≦ scale ≦ 127 です。スケールが正の値の場合、その値が小数点以下の桁数となります。

たとえば、NUMBER(5,2) は 0 および 0.01 〜 999.99 までの数値を扱えます。

BINARY_FLOAT

BINARY_FLOATは32ビットの浮動小数点数を格納するデータ型です。

BINARY_FLOAT

BINARY_DOUBLE

BINARY_DOUBLEは64ビットの浮動小数点数を格納するデータ型です。

BINARY_DOUBLE

日付と時刻

DATE

日付と時刻を格納するデータ型です。書式は YYYY-MM-DD HH:MM:SS です。

DATE

TIMESTAMP

日付と時刻を格納するデータ型です。書式は YYYY-MM-DD HH:MM:SS [FFFFFFFFF] です。

TIMESTAMP[(fractional_seconds)] [WITH [LOCAL] TIMEZONE]

秒の小数点以下の桁数をfractional_secondsで指定することができます。指定できる範囲は、1 ≦ fractional_seconds ≦ 9 です。fractional_secondsを省略した場合、6桁となります。

日付と時刻に加えてタイムゾーンに関する情報を含めるには、WITH TIMEZONEまたはWITH LOCAL TIMEZONEを指定します。

INTERVAL YEAR TO MONTH

日付の差分(年と月)の差分を格納するデータ型です。

INTERVAL YEAR[(year_precision)] TO MONTH

精度をyear_precisionで指定することができます。指定できる範囲は、0 ≦ year_precision ≦ 9 です。year_precisionを省略した場合、精度は2桁となります。

INTERVAL DAY TO SECOND

日付と時刻の差分(日、時間、分、秒)を格納するデータ型です。

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

日の精度をday_precisionで指定することができます。指定できる範囲は、0 ≦ day_precision ≦ 9 です。day_precisionを省略した場合、精度は2桁となります。

秒の小数点以下の桁数をfractional_secondsで指定することができます。指定できる範囲は、0 ≦ fractional_seconds ≦ 9 です。fractional_secondsを省略した場合、精度は6桁となります。

バイナリ・データ

RAW

バイナリ・データを格納するデータ型です。

RAW[(size)]

LONG RAW

可変長バイナリ・データを格納するデータ型です。

LONG RAW

最大サイズは2GBです。

ラージ・オブジェクト

CLOB

キャラクタ・ラージ・オブジェクトを格納するデータ型です。

CLOB

最大サイズは、4GB -1 にデータベース・ブロックサイズを掛けた値です。

NCLOB

Unicodeキャラクタを含むキャラクタ・ラージ・オブジェクトを格納するデータ型です。

NCLOB

最大サイズは、4GB -1 にデータベース・ブロックサイズを掛けた値です。

BLOB

バイナリ・ラージ・オブジェクトを格納するデータ型です。

BLOB

最大サイズは、4GB -1 にデータベース・ブロックサイズを掛けた値です。

その他

ROWID

索引構成表の論理アドレスを表すBASE64文字列を格納するデータ型です。

ROWID[(size)]

最大サイズをsizeで指定することができます。

BFILE

データベース外に保存される大きなバイナリ・ファイルへのロケーたを格納するデータ型です。

BFILE

最大サイズは4GBです。

ANSI SQLとOracleのデータ型の違い

ANSI SQLデータ型とOracleデータ型とでは多少異なります。両者の違いを次に示します。

ANSI SQLデータ型Oracleデータ型
CHARACTER(n)
CHAR(n)
CHAR(n)
CHARACTER VARYING(n)
CHAR VARYING(n)
VARCHAR(n)
NATIONAL CHARACTER(n)
NATIONAL CHAR(n)
NCHAR(n)
NCHAR(n)
NATIONAL CHARACTER VARYING(n)
NATIONAL CHAR VARYING(n)
NCHAR VARYING(n)
NVARCHAR2(n)
NUMERIC(p,s)
DECIMAL(p,s)
NUMBER(p,s)
INTEGER
INT
SMALLINT
NUMBER(38)
FLOAT
DOUBLE PRECISION
REAL
NUMBER
SEO 仕事 掲示板 レンタルサーバー プロフ SEO