美文网首页
Java JDBC中,MySQL字段类型转换jdbcType

Java JDBC中,MySQL字段类型转换jdbcType

作者: 8090的大叔 | 来源:发表于2020-08-28 02:35 被阅读0次

    概述

    MySQL里的数据字段类型与Java数据类型的对应标准。

    1. 类型映射关系

    MySQL类型类型、JDBC类型、Java类型的映射关系

    MySQL                 数据类                 型                 Java jdbcType 默认返回的Java类型
    BIT(1) (new in MySQL-5.0)                 BIT java.lang.Boolean
    TINYINT TINYINT java.lang.Boolean if the configuration property tinyInt1isBit is set to true (the default) and the storage size is 1, or java.lang.Integer if not.
    BOOL, BOOLEAN TINYINT See TINYINT, above as these are aliases for TINYINT(1), currently.
    SMALLINT[(M)] [UNSIGNED] SMALLINT [UNSIGNED] java.lang.Integer (regardless of whether it is UNSIGNED or not)
    MEDIUMINT[(M)] [UNSIGNED] MEDIUMINT [UNSIGNED] java.lang.Integer (regardless of whether it is UNSIGNED or not)
    INT,INTEGER[(M)] [UNSIGNED] INTEGER [UNSIGNED] java.lang.Integer, if UNSIGNED java.lang.Long
    BIGINT[(M)] [UNSIGNED] BIGINT [UNSIGNED] java.lang.Long, if UNSIGNED java.math.BigInteger
    FLOAT[(M,D)] FLOAT java.lang.Float
    DOUBLE[(M,B)] DOUBLE java.lang.Double
    DECIMAL[(M[,D])] DECIMAL java.math.BigDecimal
    DATE DATE java.sql.Date
    DATETIME DATETIME java.sql.Timestamp
    TIMESTAMP[(M)] TIMESTAMP java.sql.Timestamp
    TIME TIME java.sql.Time
    YEAR[(2,4)] YEAR If yearIsDateType configuration property is set to false, then the returned object type is java.sql.Short. If set to true (the default), then the returned object is of type java.sql.Datewith the date set to January 1st, at midnight.
    CHAR(M) CHAR java.lang.String (unless the character set for the column is BINARY, then byte[] is returned.
    VARCHAR(M) [BINARY] VARCHAR java.lang.String (unless the character set for the column is BINARY, then byte[] is returned.
    BINARY(M) BINARY byte[]
    VARBINARY(M) VARBINARY byte[]
    TINYBLOB TINYBLOB byte[]
    TINYTEXT VARCHAR java.lang.String
    BLOB BLOB byte[]
    TEXT VARCHAR java.lang.String
    MEDIUMBLOB MEDIUMBLOB byte[]
    MEDIUMTEXT VARCHAR java.lang.String
    LONGBLOB LONGBLOB byte[]
    LONGTEXT VARCHAR java.lang.String
    ENUM('value1','value2',...) CHAR java.lang.String
    SET('value1','value2',...) CHAR java.lang.String

    2. 类型转换关系

    允许的跨类型相互转换的对应关系

    MySQL数据类型 可转换为的Java类型
    CHAR, VARCHAR, BLOB, TEXT, ENUM, and 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, INTEGER, BIGINT java.lang.String, java.lang.Short, java.lang.Integer, java.lang.Long, java.lang.Double, java.math.BigDecimal
    DATE, TIME, DATETIME, TIMESTAMP java.lang.String, java.sql.Date, java.sql.Timestamp

    相关文章

      网友评论

          本文标题:Java JDBC中,MySQL字段类型转换jdbcType

          本文链接:https://www.haomeiwen.com/subject/wirirktx.html