JDBC数据类型
JDBC数据类型实例代码教程 - JDBC驱动程序Java数据类型转换到适当的JDBC类型然后再将它发送到数据库。它使⽤默认的⼤多数数据类型映射。
JDBC驱动程序Java数据类型转换到适当的JDBC类型然后再将它发送到数据库。它使⽤默认的⼤多数数据类型映射。例如,⼀个Java int 转换成⼀个SQL INTEGER。创建默认映射驱动器之间提供⼀致性。
下表总结了默认的JDBC数据类型的Java数据类型转换,当调⽤setXXX()⽅法的PreparedStatement或CallableStatement对象或ResultSet.updateXXX()⽅法。
SQL JDBC/Java setXXX updateXXX
VARCHAR java.lang.String setString updateString
CHAR java.lang.String setString updateString
LONGVARCHAR java.lang.String setString updateString
BIT boolean setBoolean updateBoolean
NUMERIC java.math.BigDecimal setBigDecimal updateBigDecimal
TINYINT byte setByte updateByte
SMALLINT short setShort updateShort
INTEGER int setInt updateInt
BIGINT long setLong updateLong
REAL float setFloat updateFloat
FLOAT float setFloat updateFloat
DOUBLE double setDouble updateDouble
VARBINARY byte[ ]setBytes updateBytes
BINARY byte[ ]setBytes updateBytes
DATE java.sql.Date setDate updateDate
TIME java.sql.Time setTime updateTime
TIMESTAMP java.sql.Timestamp setTimestamp updateTimestamp
CLOB java.sql.Clob setClob updateClob
BLOB java.sql.Blob setBlob updateBlob
ARRAY java.sql.Array setARRAY updateARRAY
REF java.sql.Ref SetRef updateRef
STRUCT java.sql.Struct SetStruct updateStruct
JDBC3.0的增强⽀持BLOB,CLOB,ARRAY,REF数据类型。ResultSet对象现在有
UPDATEBLOB(),updateCLOB(),updateArray()和updateRef()⽅法,使您可以在服务器上直接操作相应的数据。
setXXX()和updateXXX()⽅法,使您可以转换成特定的Java类型到特定的JDBC数据类型。setObject()和updateObject()⽅法,使您能够⼏乎所有的Java类型映射到JDBC数据类型。
ResultSet对象提供相应的getXXX()⽅法为每个数据类型来检索列值。每⼀种⽅法,可以使⽤与列名或由它的序号位置。
SQL JDBC/Java setXXX getXXX
VARCHAR java.lang.String setString getString
CHAR java.lang.String setString getString
LONGVARCHAR java.lang.String setString getString
BIT boolean setBoolean getBoolean
NUMERIC java.math.BigDecimal setBigDecimal getBigDecimal
TINYINT byte setByte getByte
SMALLINT short setShort getShort
INTEGER int setInt getInt
BIGINT long setLong getLong
REAL float setFloat getFloat
FLOAT float setFloat getFloat
DOUBLE double setDouble getDouble
VARBINARY byte[ ]setBytes getBytes
BINARY byte[ ]setBytes getBytes
DATE java.sql.Date setDate getDate
TIME java.sql.Time setTime getTime
TIMESTAMP java.sql.Timestamp setTimestamp getTimestamp
CLOB java.sql.Clob setClob getClob
BLOB java.sql.Blob setBlob getBlob
ARRAY java.sql.Array setARRAY getARRAY
REF java.sql.Ref SetRef getRef
STRUCT java.sql.Struct SetStruct getStruct
⽇期 & 时间数据类型::
⽇期 & 时间数据类型
java.sql.Date类映射到SQL DATE类型,并在java.sql.Time的java.sql.Timestamp类,分别映射到SQL和SQL TIMESTAMP数据类型。以下⽰例显⽰了如何的格式的⽇期和时间类标准的Java⽇期和时间值相匹配的SQL数据类型需求。
import java.sql.Date;
import java.sql.Time;
import java.sql.Timestamp;
import java.util.*;
public class SqlDateTime {
bigdecimal转换为integer
public static void main(String[] args) {
//Get standard date and time
java.util.Date javaDate = new java.util.Date();
long javaTime = Time();
System.out.println("The Java Date is:" +
//Get and display SQL DATE by www.yiibai
java.sql.Date sqlDate = new java.sql.Date(javaTime);
System.out.println("The SQL DATE is: " +
//Get and display SQL TIME
java.sql.Time sqlTime = new java.sql.Time(javaTime);
System.out.println("The SQL TIME is: " +
//Get and display SQL TIMESTAMP
java.sql.Timestamp sqlTimestamp =
new java.sql.Timestamp(javaTime);
System.out.println("The SQL TIMESTAMP is: " +
}//end main
}//end SqlDateTime
现在让我们来编译上⾯的例⼦如下:
C:\>javac SqlDateTime.java
C:\>
当你运⾏JDBCExample的,它会产⽣以下结果:
C:\>java SqlDateTime
The Java Date is:Tue Aug 18 13:46:02 GMT+04:00 2009
The SQL DATE is: 2009-08-18
The SQL TIME is: 13:46:02
The SQL TIMESTAMP is: 2009-08-18 13:46:02.828
C:\>
处理NULL值:
SQL使⽤NULL值和Java的使⽤null是不同的概念。那么如何在Java中处理SQL NULL值呢?有三种⽅法可以使⽤:
1. 避免使⽤getXXX()⽅法返回的原始数据类型。
2. 使⽤原始数据类型的包装类,并使⽤ResultSet对象的wasNull()⽅法来测试的getXXX()⽅法返回的包装类变量的值是否应被设置为
null。
3. 使⽤原始数据类型和ResultSet对象的wasNull()⽅法来测试是否收到原始变量,返回的值的getXXX()⽅法将被设置为选择⼀个可接
受的值代表⼀个NULL。
4. 下⾯是⼀个例⼦处理null值
.

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。