MySQL Connector/J能够方便地处理MySQL数据类型和Java数据类型之间的转换。一般来说,任何MySQL数据类型均可以被转换为java.lang.String类型,并且任何数字类型可以被转换成任意的Java数字类型,虽然在某些情况下会出现取舍、溢出或者精度丢失的情况。
从Connector/J 3.1.0开始,JDBC驱动程序能够遵照JDBC规范适时给出警告信息或者抛出DataTruncation异常,除非你通过使用jdbcCompliantTruncation属性来显式配置连接并将其设置为false。
MySQL中的数据类型 能够被转换为Java中的如下数据类型
CHAR, VARCHAR, BLOB, TEXT, ENUM, SET java.lang.String, java.io.InputStream, java.io.Reader, java.sql.Blob, java.sql.Clob
FLOAT, REAL, DOUBLE PRECISION, NUMERIC, DECIMAL, TINYINT, SMALLINT, MEDIUMINT, DECIMAL, INTEGER, BIGINT java.lang.String, java.lang.Short, java.lang.Integer, java.math.BigDecimal, java.lang.Long, java.lang.Double
DATE, TIME, DATETIME, TIMESTAMP java.lang.String, java.sql.Date, java.sql.Timestamp
ResultSet.getObject() 方法会使用MySQL和Java数据类型之间的类型转换,并遵照如下规则:
MySQL数据类型 返回的Java类型
BIT(1) java.lang.Boolean
BIT(>1) byte[]
TINYINT 如果tinyInt1isBit配置属性被设置成true并且存储大小为1时,
那么转换成java.lang.Boolean,否则转换为java.lang.Integer
BOOL, BOOLEAN 等同于TINYINT(1)的情况,请参照TINYINT的转换规则
SMALLINT java.lang.Integer
MEDIUMINT 转换为java.lang.Integer类型,如果为无符号数,
那么转换为java.lang.Long(C/J 3.1或者之前版本),或者java.lang.Integer (C/J 5.0或者之后版本)
INT, INTEGER java.lang.Integer,如果为无符号数,那么转换为java.lang.Long类型
BIGINT java.lang.Long,如果为无符号数,那么转换为java.math.BigInteger类型
FLOAT java.lang.Float
DOUBLE java.lang.Double
DECIMAL java.math.BigDecimal
DATE java.sql.Date
DATETIME java.sql.Timestamp
TIMESTAMP java.sql.Timestamp
TIME java.sql.Time
YEAR 如果yearIsDateType配置属性被设置为false,那么返回的对象类型为java.sql.Short。
如果设置为true,那么会返回java.sql.Date对象,并且日期被设置为1月1日午夜
CHAR java.lang.String,除非该列的字符集为BINARY,那么将返回byte[]
VARCHAR java.lang.String,除非该列的字符集为BINARY,那么将返回byte[]
BINARY byte[]
VARBINARY byte[]
TINYBLOB byte[]
TINYINT java.lang.String
BLOB byte[]
TEXT java.lang.String
MEDIUMBLOB byte[]
MEDIUMTEXT java.lang.String
LONGBLOB byte[]
LONGTEXT java.lang.String
ENUM('value1','value2',...) java.lang.String
SET('value1','value2',...) java.lang.String
以上内容主要翻译自MySQL的官方文档,如有需要请参考:http://dev.mysql.com/doc/refman/5.0/en/connector-j-reference-type-conversions.html。
分享到:
相关推荐
Java jdbc操作mysql Java jdbc操作mysql
java jdbc连接mySql的小例子,包含数据库文件,。导入数据库可以直接用
初入门想学习好jdbc的,可以下载去看看,帮助很大!
Java 数据类型和 MySql 数据类型对应表 在 Java 编程中,了解 Java 数据类型和 MySql 数据类型的对应关系非常重要。这是因为在 Java 应用程序中,我们经常需要与数据库进行交互,而 MySql 是一种常用的关系数据库...
java jdbc连接mysql所需要的jar包
java实现JDBC两个不同的数据库的迁徙,和实现分表数据迁徙。
JDBC数据类型与数据库字段对应表——mysql篇 数值型 整型 JDBC tinyint java.lang.Integer smallint mediumint java.lang.Long int bigint java.math.BigInteger
关于java JDBC 连接MYSQL数据库的例子,用的Eclipse 3.4,JDK1.6,MYSQL5.0,附上驱动。
这是一个非常简单的java通过jdbc连接mysql数据库的例子。仅供参考。
Java+JDBC +mysql数据库 实现学生的增删改查等功能 可以选择 不同的功能来实现 增删改查 Java+JDBC +mysql数据库 实现学生的增删改查等功能 Java+JDBC +mysql数据库 实现学生的增删改查等功能 Java+JDBC +mysql...
java JDBC 关于MySql的增删除改查 数据库操作类 添加,修改,删除,查询
本文讲述了Java数据类型与MySql数据类型对照表。分享给大家供大家参考,具体如下: 类型名称 显示长度 数据库类型 JAVA类型 JDBC类型索引(int) VARCHAR L+N VARCHAR java.lang.String 12 CHAR N CHAR java....
java+JDBC+mysql 图书管理系统 实现了 图书的查询 修改 新增 删除等java+JDBC+mysql 图书管理系统 实现了 图书的查询 修改 新增 删除等java+JDBC+mysql 图书管理系统 实现了 图书的查询 修改 新增 删除等java+JDBC+...
封装了java使用jdbc对mysql的操作,以及java使用jdbc对mysql的事务处理,对execute、executeUpdate、executeQuery进行了封装,把繁琐的创建数据库连接对象、PreparedStatement对象、结果集对象,打开关闭连接进行了...
java 使用jdbc 连接mysql 实现增删改查java 使用jdbc 连接mysql 实现增删改查java 使用jdbc 连接mysql 实现增删改查java 使用jdbc 连接mysql 实现增删改查java 使用jdbc 连接mysql 实现增删改查
NULL 博文链接:https://lafecat.iteye.com/blog/1978007
mysql java JDBC 导入资源包mysql-connector-java-5.1.48
MySQL JDBC驱动包8.0, mysql-connector-java-8.0.29。 供Java连接数据库使用。
此外,本文还提供了一些相关的学习资源,例如《Java+MySQL数据库程序设计总结》、《Java数据结构与算法教程》、《Java文件与目录操作技巧汇总》、《Java操作DOM节点技巧总结》和《Java缓存操作技巧汇总》,这些资源...
mysql-connector-java Linux下MySQL的JDBC驱动Jar包