Java SQL Tipos Equivalencias
Java SQL Tipos Equivalencias
To write efficient JDBC and SQLJ programs, you need to use the best mappings between
Java data types and table column data types.
The following tables summarize the mappings of Java data types to JDBC and database data
types for a DB2 Database for Linux, UNIX, and Windows, DB2 for z/OS, or IBM
Informix Dynamic Server (IDS) system.
Table 1. Mappings of Java data types to database server data types for updating
database tables
Java data type
short
SMALLINT
short
BOOLEAN
boolean, java.lang.Boolean
BOOLEAN
int, java.lang.Integer
INTEGER
int, java.lang.Integer
SERIAL
long, java.lang.Long
INT8
long, java.lang.Long
BIGINT
long, java.lang.Long
SERIAL8
long, java.lang.Long
BIGSERIAL
float, java.lang.Float
SMALLFLOAT
double, java.lang.Double
FLOAT
java.math.BigDecimal
DECIMAL(p,s)1
java.math.BigDecimal
DECIMAL(p)2
java.math.BigDecimal
DECIMAL3
Table 1. Mappings of Java data types to database server data types for updating
database tables
Java data type
java.math.BigDecimal
MONEY(p,s)1
java.lang.String
CHAR(n)4
java.lang.String
NCHAR(n)4
java.lang.String
VARCHAR(m,r)5
java.lang.String
LVARCHAR(m,r)6
java.lang.String
NVARCHAR(m,r)6
java.lang.String
INTERVAL
java.lang.String
CLOB7
byte[]
BYTE
byte[]
BLOB7
java.sql.Blob
BLOB
java.sql.Clob
CLOB
java.lang.Clob
TEXT
java.sql.Date
DATE
java.sql.Time
java.sql.Timestamp
java.io.ByteArrayInputStream
BLOB
java.io.StringReader
CLOB
java.io.ByteArrayInputStream
CLOB
Notes:
1. p is the decimal precision and s is the scale of the table column.
Table 1. Mappings of Java data types to database server data types for updating
database tables
Java data type
Table 2. Mappings of database server data types to Java data types for retrieving data
from database server tables
Recommended Java
data type or Java
object type
SMALLINT
short
BOOLEAN
boolean
short
INTEGER
int
SERIAL
int
Table 2. Mappings of database server data types to Java data types for retrieving data
from database server tables
Recommended Java
data type or Java
object type
INT8
long
BIGINT
long
SERIAL8
long
BIGSERIAL
long
DECIMAL(p,s)
java.math.BigDecimal
DECIMAL(p)
java.math.BigDecimal
MONEY(p,s)
java.math.BigDecimal
SMALLFLOAT
float
Table 2. Mappings of database server data types to Java data types for retrieving data
from database server tables
Recommended Java
data type or Java
object type
FLOAT
double
CHAR(n)
java.lang.String
NCHAR(n)
java.lang.String
VARCHAR(m,r)
java.lang.String
LVARCHAR(m,r)
java.lang.String
Table 2. Mappings of database server data types to Java data types for retrieving data
from database server tables
Recommended Java
data type or Java
object type
NVARCHAR(n)
java.lang.String
INTERVAL
java.lang.String
BYTE
byte[]
None
CLOB(n)
java.sql.Clob
java.lang.String
TEXT
java.sql.Clob
java.lang.String
BLOB(n)
java.sql.Blob
byte[]1
DATE
java.sql.Date
java.sql.String,
java.sql.Timestamp
DATETIME HOUR TO
SECOND
java.sql.Time
java.sql.String,
java.sql.Timestamp
DATETIME YEAR TO
FRACTION(5)
java.sql.Timestamp
java.sql.String,
java.sql.Date,
java.sql.Time,
java.sql.Timestamp
Notes:
Table 2. Mappings of database server data types to Java data types for retrieving data
from database server tables
Recommended Java
data type or Java
object type
1. This mapping is valid only if the database server can determine the data type of the
column.
Table 3. Mappings of Java, JDBC, and SQL data types for calling stored procedures
and user-defined functions
Java data type
boolean
BIT
BOOLEAN
boolean
BOOLEAN
BOOLEAN
byte1
TINYINT
SMALLINT
short, java.lang.Short
SMALLINT
SMALLINT
int, java.lang.Integer
INTEGER
INTEGER
int, java.lang.Integer
INTEGER
SERIAL
long
BIGINT
INT8
long
BIGINT
BIGINT
long
BIGINT
SERIAL8
long
BIGINT
BIGSERIAL
Table 3. Mappings of Java, JDBC, and SQL data types for calling stored procedures
and user-defined functions
Java data type
float, java.lang.Float
REAL
SMALLFLOAT
float, java.lang.Float
FLOAT
SMALLFLOAT
double, java.lang.Double
DOUBLE
FLOAT
java.math.BigDecimal
NUMERIC
DECIMAL
java.math.BigDecimal
DECIMAL
DECIMAL
java.math.BigDecimal
NUMERIC
MONEY
java.lang.String
CHAR
CHAR
java.lang.String
CHAR
INTERVAL
java.lang.String
CHAR
NCHAR
java.lang.String
VARCHAR
VARCHAR
java.lang.String
VARCHAR
NVARCHAR
java.lang.String
LONGVARCHAR
VARCHAR
java.lang.String
LONGVARCHAR
LVARCHAR
java.lang.String
VARCHAR
CLOB
java.lang.String
LONGVARCHAR
CLOB
java.lang.String
CLOB
CLOB
java.lang.String
CLOB
TEXT
byte[]
BINARY
BYTE
byte[]
VARBINARY
BYTE
byte[]
VARBINARY
BYTE
Table 3. Mappings of Java, JDBC, and SQL data types for calling stored procedures
and user-defined functions
Java data type
byte[]
LONGVARBINARY
BYTE
byte[]
LONGVARBINARY
BLOB2
java.sql.Date
DATE
DATE
java.sql.Time
TIME
DATETIME
HOUR TO
SECOND
java.sql.Timestamp
TIMESTAMP
DATETIME
YEAR TO
FRACTION(5)
java.sql.Blob
BLOB
BLOB
java.sql.Clob
CLOB
CLOB
java.io.ByteArrayInputStream
None
BLOB
java.io.StringReader
None
CLOB
java.io.ByteArrayInputStream
None
CLOB