ぺーぺーSEのブログ

備忘録・メモ用サイト。

SQLとJavaのデータ型について

対応についてまとめとく。
O/Rマッパーを使用する際は、そちらの推奨型を優先で。

SQL Javaの型 備考
CHAR java.lang.String -
VARCHAR2 java.lang.String -
LONG java.lang.String データが大容量の場合にはCLOBに挿入すること。
NUMBER long 整数を格納したい場合。
NUMBER double 浮動小数を扱いたい場合。
NUMBER java.math.BigDecimal 桁数が多い(×long)、少数の精度が求められる(×double)場合。
RAW byte[] データが大容量の場合にはBLOBに挿入すること。
LONGRAW byte[] データが大容量の場合にはBLOBに挿入すること。
DATE java.sql.Date Date型では日付情報のみを格納して時刻情報は使用しないこと。
TIMESTAMP java.sql.Timestamp ミリ秒より下のデータを扱う場合。
TIMESTAMP java.util.Date ミリ秒より下のデータを扱わない場合。
BLOB java.sql.Blob -
CLOB java.sql.Clob -
ユーザ定義オブジェクト java.sql.Struct -
ユーザ定義参照 java.sql.Ref -
ユーザ定義コレクション java.sql.Array -
ROWID java.sql.RowId -
NCLOB java.sql.Nclob -
NCHAR java.lang.String -
BFILE oracle.sql.BFILE -
REF CURSOR java.sql.ResultSet ストアドプロシージャから、複数の結果を返す場合。