zoukankan      html  css  js  c++  java
  • oracle/mysql java jdbc类型映射

    MySQL数据类型JAVA数据类型JDBC TYPE普通变量类型主键类型
    BIGINT Long BIGINT 支持 支持
    TINYINT Byte TINYINT 支持 不支持
    SMALLINT Short SMALLINT 支持 不支持
    MEDIUMINT Integer INTEGER 支持 支持
    INTEGER Integer INTEGER 支持 支持
    INT Integer INTEGER 支持 支持
    FLOAT Float REAL 支持 不支持
    DOUBLE Double DOUBLE 支持 不支持
    DECIMAL BigDecimal DECIMAL 支持 不支持
    NUMERIC BigDecimal DECIMAL 支持 不支持
    CHAR String CHAR 支持 不支持
    VARCHAR String VARCHAR 支持 不支持
    TINYBLOB DataTypeWithBLOBs.byte[] BINARY 不支持 不支持
    TINYTEXT String VARCHAR 支持 不支持
    BLOB DataTypeWithBLOBs.byte[] BINARY 不支持 不支持
    TEXT DataTypeWithBLOBs.String LONGVARCHAR 不支持 不支持
    MEDIUMBLOB DataTypeWithBLOBs.byte[] LONGVARBINARY 不支持 不支持
    MEDIUMTEXT DataTypeWithBLOBs.String LONGVARCHAR 不支持 不支持
    LONGBLOB DataTypeWithBLOBs.byte[] LONGVARBINARY 不支持 不支持
    LONGTEXT DataTypeWithBLOBs.String LONGVARCHAR 不支持 不支持
    DATE Date DATE 支持 不支持
    TIME Date TIME 支持 不支持
    YEAR Date DATE 不支持 不支持
    DATETIME Date TIMESTAMP 支持 不支持
    TIMESTAMP Date TIMESTAMP 支持 不支持

      以下是商业数据库的。 

      java.sql.Types 值 Java 类型 IBM DB2 Oracle Sybase SQL Informix IBM Content Manager
      BIGINT java.lang.long BIGINT NUMBER (38, 0) BIGINT BIGINT INT8 DK_CM_BIGINT
      BINARY byte[] CHAR FOR BIT DATA RAW BINARY IMAGE BYTE DK_CM_BLOB
      BIT java.lang.Boolean N/A BIT BIT BIT BIT DK_CM_SMALLINT
      BLOB byte[] BLOB BLOB BLOB BLOB BLOB DK_CM_BLOB
      CHAR java.lang.String CHAR, GRAPHIC CHAR CHAR CHAR CHAR DK_CM_CHAR
      CLOB java.lang.String CLOB, DBCLOB CLOB CLOB CLOB CLOB DK_CM_CLOB
      DATE java.sql.Date DATE DATE DATE DATE DATE DK_CM_DATE
      DECIMAL java.math.BigDecimal DECIMAL NUMBER DECIMAL, MONEY, SMALLMONEY DECIMAL DECIMAL DK_CM_DECIMAL
      DOUBLE java.lang.Double DOUBLE DOUBLE PRECISION DOUBLE PRECISION DOUBLE PRECISION DOUBLE PRECISION DK_CM_DOUBLE
      FLOAT java.lang.Double FLOAT FLOAT FLOAT FLOAT FLOAT DK_CM_DOUBLE
      INTEGER java.lang.Integer INTEGER INTEGER INT INTEGER INTEGER DK_CM_INTEGER
      JAVA_OBJECT java.lang.Object JAVA_OBJECT JAVA_OBJECT JAVA_OBJECT JAVA_OBJECT OPAQUE N/A
      LONGVARBINARY byte[] LONG VARCHAR FOR BIT DATA LONG RAW IMAGE IMAGE BYTE DK_CM_BLOB
      LONGVARCHAR java.lang.String LONG VARCHAR, LONG VARGRAPHIC LONG TEXT TEXT TEXT DK_CM_VARCHAR(3500)
      NUMERIC java.math.BigDecimal NUMERIC NUMBER NUMERIC NUMERIC NUMERIC DK_CM_DECIMAL
      OTHER java.lang.Object OTHER OTHER OTHER OTHER OTHER N/A
      REAL java.lang.Float REAL REAL REAL REAL REAL DK_CM_DOUBLE
      SMALLINT java.lang.Integer SMALLINT SMALLINT SMALLINT SMALLINT SMALLINT DK_CM_INTEGER
      TIME java.sql.Time TIME DATE TIME TIME DATETIME HOUR TO SECOND DK_CM_TIME
      TIMESTAMP java.sql.Timestamp TIMESTAMP DATE DATETIME, SMALLDATETIME DATETIME DATETIME YEAR TO FRACTION (5) DK_CM_TIMESTAMP
      TINYINT java.lang.Bute SMALLINT

    TINYINT

    TINYINT

    TINYINT TINYINT DK_CM_INTEGER
      VARBINARY byte[] VARCHAR FOR BIT DATA RAW VARBINARY IMAGE BYTE DK_CM_BLOB
      VARCHAR java.lang.String VARCHAR, VARGRAPHIC VARCHAR VARCHAR VARCHAR VARCHAR DK_CM_VARCHAR
     
      Oracle ResultSetMetaData getPrecision/getScale有一个bug,count(*) as xxx、abs(col) as xxx,这样xxx是无法返回正确的Scale和Precision的,要想这些情况下返回正确的值,需要使用明确的cast(xxx as datatype)。参见https://stackoverflow.com/questions/1410267/oracle-resultsetmetadata-getprecision-getscale
  • 相关阅读:
    Linux内核分析第七周学习笔记——Linux内核如何装载和启动一个可执行程序
    <深入理解计算机系统>第七章读书笔记
    Linux内核分析第六周学习笔记——分析Linux内核创建一个新进程的过程
    linux内核分析第3章&第18章读书笔记
    Linux内核分析第五周学习总结——分析system_call中断处理过程
    课本第五章读书笔记
    Linux内核分析第四周学习总结——系统调用的工作机制
    课本第一二章读书笔记
    20162328蔡文琛 实验二 树
    20162328蔡文琛 大二week07
  • 原文地址:https://www.cnblogs.com/zhjh256/p/11517417.html
Copyright © 2011-2022 走看看