Java – Oracle DBのデータ型マッピングを確認する

Spring Data JPAを使用していて「Javaの型」が「Oracleデータベース」ではどのようにマッピングされるのか気になったので調査してみました。Javaの型については以前の記事「Javaの型についてまとめてみる」をご参照ください。

プリミティブ型

Oracleの公式サイトにマッピング情報がありました(11.1 データ型マッピング – Oracle JDBC開発者ガイド)。まずはプリミティブ型を抜粋します。

SQLデータ型 標準Java型
NUMBER byte
NUMBER short
NUMBER int
NUMBER long
NUMBER float
NUMBER double
NUMBER boolean

プリミティブ型はOracleデータベースにマッピングすると全部NUMBER型になるんですね。char型は無いようでした。

参照型

続いて参照型のマッピングです。よく使うもののみ抜粋します。

SQLデータ型 標準Java型
CHAR java.lang.String
VARCHAR2 java.lang.String
LONG java.lang.String
NUMBER java.math.BigDecimal
RAW byte[]
LONGRAW byte[]
BLOB java.sql.Blob
CLOB java.sql.Clob
NCLOB java.sql.NClob
DATE java.sql.Date
DATE java.sql.Time
TIMESTAMP javal.sql.Timestamp

以上、「Java – Oracle DBのデータ型マッピングを確認する」でした。




Let's share SNS