oracle中數據類型對應java類型

地址:html

http://otndnld.Oracle.co.jp/document/products/oracle10g/102/doc_cd/Java.102/B19275-03/datacc.htm#BHCJBJCCjava

 

SQL數據類型 JDBC類型代碼 標準的Java類型 Oracle擴展的Java類型
 

1.0標準的JDBC類型:mysql

   

CHARsql

java.sql.Types.CHAR數據庫

java.lang.Stringoracle

oracle.sql.CHARide

VARCHAR2post

java.sql.Types.VARCHAR測試

java.lang.Stringspa

oracle.sql.CHAR

LONG

java.sql.Types.LONGVARCHAR

java.lang.String

oracle.sql.CHAR

NUMBER

java.sql.Types.NUMERIC

java.math.BigDecimal

oracle.sql.NUMBER

NUMBER

java.sql.Types.DECIMAL

java.math.BigDecimal

oracle.sql.NUMBER

NUMBER

java.sql.Types.BIT

boolean

oracle.sql.NUMBER

NUMBER

java.sql.Types.TINYINT

byte

oracle.sql.NUMBER

NUMBER

java.sql.Types.SMALLINT

short

oracle.sql.NUMBER

NUMBER

java.sql.Types.INTEGER

int

oracle.sql.NUMBER

NUMBER

java.sql.Types.BIGINT

long

oracle.sql.NUMBER

NUMBER

java.sql.Types.REAL

float

oracle.sql.NUMBER

NUMBER

java.sql.Types.FLOAT

double

oracle.sql.NUMBER

NUMBER

java.sql.Types.DOUBLE

double

oracle.sql.NUMBER

RAW

java.sql.Types.BINARY

byte[]

oracle.sql.RAW

RAW

java.sql.Types.VARBINARY

byte[]

oracle.sql.RAW

LONGRAW

java.sql.Types.LONGVARBINARY

byte[]

oracle.sql.RAW

DATE

java.sql.Types.DATE

java.sql.Date

oracle.sql.DATE

DATE

java.sql.Types.TIME

java.sql.Time

oracle.sql.DATE

TIMESTAMP

java.sql.Types.TIMESTAMP

javal.sql.Timestamp

oracle.sql.TIMESTAMP

 

2.0標準的JDBC類型:

   

BLOB

java.sql.Types.BLOB

java.sql.Blob

oracle.sql.BLOB

CLOB

java.sql.Types.CLOB

java.sql.Clob

oracle.sql.CLOB

用戶定義的對象

java.sql.Types.STRUCT

java.sql.Struct

oracle.sql.STRUCT

用戶定義的參考

java.sql.Types.REF

java.sql.Ref

oracle.sql.REF

用戶定義的集合

java.sql.Types.ARRAY

java.sql.Array

oracle.sql.ARRAY

 

Oracle擴展:

   

BFILE

oracle.jdbc.OracleTypes.BFILE

N/A

oracle.sql.BFILE

ROWID

oracle.jdbc.OracleTypes.ROWID

N/A

oracle.sql.ROWID

REF CURSOR

oracle.jdbc.OracleTypes.CURSOR

java.sql.ResultSet

oracle.jdbc.OracleResultSet

TIMESTAMP

oracle.jdbc.OracleTypes.TIMESTAMP

java.sql.Timestamp

oracle.sql.TIMESTAMP

TIMESTAMP WITH TIME ZONE

oracle.jdbc.OracleTypes.TIMESTAMPTZ

java.sql.Timestamp

oracle.sql.TIMESTAMPTZ

TIMESTAMP WITH LOCAL TIME ZONE

oracle.jdbc.OracleTypes.TIMESTAMPLTZ

java.sql.Timestamp

oracle.sql.TIMESTAMPLTZ

 
 
http://blog.csdn.net/perny/article/details/7971003
 

數據庫中爲number類型的字段,在Java類型中對應的有Integer和BigDecimal都會出現; 
測試發現當數據庫爲sql server和DB2時,用getObject()取出來時Integer類型,可是Oracle 中取出來就會是Integer或者BigDecimal類型。緣由是oracle與java類型對應於number長度有關。 
這裏寫圖片描述

遇到該類型問題,若要判斷每一個數據庫和數據庫字段長度不一樣對應的java數據類型不一樣太過煩瑣,可採用getString()來取值,統一先轉爲string來判斷

另外附上 
java.sql.Types,數據庫字段類型,java數據類型的對應關係 
http://www.cnblogs.com/shishm/archive/2012/01/30/2332142.html

相關文章
相關標籤/搜索