The mapping of the data type in a DB and a type in Java are divided into two steps:
1. Data type map in db to a type of JDBC
2. A type map of JDBC to a type of Java
For SQL Server, the following is the mapping of SQL server2000 data type and JDBC data type:
SQL Server data type JDBC data type
bigint bigint
Binary binary
Bit bit
Char Char
DateTime TIMESTAMP
Decimal Ecimal
float float
Image LongVarBinary
int INTEGER
Money DECIMAL
NCHAR CHAR
ntext LongVarChar
Numeric numeric
nvarchar VARCHAR
Real Real
smalldatetime TIMESTAMP
smallint smallint
SmallMoney DECIMAL
sql_variant VARCHAR
sysname VARCHAR
Text LongVarChar
Timestamp BINARY
tinyint tinyint
uniqueidentifier CHAR
varbinary varbinary
varchar varchar
The following is the mapping between the JDBC data type and the Java data type:
JDBC type Java Type
CHAR String
VARCHAR String
LongVarChar String
NUMERIC Java.math.BigDecimal
DECIMAL Java.math.BigDecimal
BIT Boolean
Boolean Boolean
TINYINT byte
SMALLINT Short
INTEGER int
BIGINT Long
REAL float
FLOAT Double
Double Double
BINARY byte[]
VARBINARY byte[]
LongVarBinary byte[]
DATE java.sql.Date
Time Java.sql.Time
TIMESTAMP Java.sql.Timestamp
CLOB CLOB
Blob blob
Array array
DATALINK Java.net.URL
Java_object underlying Java class
Finally, for the mapping between DB and JDBC, you can refer to the corresponding JDBC driver documentation.
For mapping between JDBC and Java, you can refer to JDBC3. Spec of 0. :)
SQL Reference SQL data type corresponds to type in Java