PostgreSQL与Java JDBC数据类型对照

 序号 数据库类型 Java类型 JDBC索引 JDBC类型
1 varchar java.lang.String 12 VARCHAR
2 char java.lang.String 1 CHAR
3 cidr java.lang.Object 1111 OTHER
4 inet java.lang.Object 1111 OTHER
5 macaddr java.lang.Object 1111 OTHER
6 text java.lang.String 12 VARCHAR
7 int8 java.lang.Long -5 BIGINT
8 bytea byte -2 BINARY
9 box java.lang.Object 1111 OTHER
10 circle java.lang.Object 1111 OTHER
11 float8 java.lang.Double 8 DOUBLE
12 int4 java.lang.Integer 4 INTEGER
13 interval java.lang.Object 1111 OTHER
14 line java.lang.Object 1111 OTHER
15 lseg java.lang.Object 1111 OTHER
16 money java.lang.Double 8 DOUBLE
17 numeric java.math.BigDecimal 2 NUMERIC
18 path java.lang.Object 1111 OTHER
19 point java.lang.Object 1111 OTHER
20 polygon java.lang.Object 1111 OTHER
21 float4 java.lang.Float 7 REAL
22 int2 java.lang.Integer 5 SMALLINT
23 time java.sql.Time 92 TIME
24 timestamp java.sql.Timestamp 93 TIMESTAMP
25 bit java.lang.Boolean -7 BIT
26 varbit java.lang.Object 1111 OTHER
27 bool java.lang.Boolean -7 BIT

JdbcType 

public enum JdbcType {
  /*
   * This is added to enable basic support for the
   * ARRAY data type - but a custom type handler is still required
   */
  ARRAY(Types.ARRAY),
  BIT(Types.BIT),
  TINYINT(Types.TINYINT),
  SMALLINT(Types.SMALLINT),
  INTEGER(Types.INTEGER),
  BIGINT(Types.BIGINT),
  FLOAT(Types.FLOAT),
  REAL(Types.REAL),
  DOUBLE(Types.DOUBLE),
  NUMERIC(Types.NUMERIC),
  DECIMAL(Types.DECIMAL),
  CHAR(Types.CHAR),
  VARCHAR(Types.VARCHAR),
  LONGVARCHAR(Types.LONGVARCHAR),
  DATE(Types.DATE),
  TIME(Types.TIME),
  TIMESTAMP(Types.TIMESTAMP),
  BINARY(Types.BINARY),
  VARBINARY(Types.VARBINARY),
  LONGVARBINARY(Types.LONGVARBINARY),
  NULL(Types.NULL),
  OTHER(Types.OTHER),
  BLOB(Types.BLOB),
  CLOB(Types.CLOB),
  BOOLEAN(Types.BOOLEAN),
  CURSOR(-10), // Oracle
  UNDEFINED(Integer.MIN_VALUE + 1000),
  NVARCHAR(Types.NVARCHAR), // JDK6
  NCHAR(Types.NCHAR), // JDK6
  NCLOB(Types.NCLOB), // JDK6
  STRUCT(Types.STRUCT),
  JAVA_OBJECT(Types.JAVA_OBJECT),
  DISTINCT(Types.DISTINCT),
  REF(Types.REF),
  DATALINK(Types.DATALINK),
  ROWID(Types.ROWID), // JDK6
  LONGNVARCHAR(Types.LONGNVARCHAR), // JDK6
  SQLXML(Types.SQLXML), // JDK6
  DATETIMEOFFSET(-155); // SQL Server 2008

  public final int TYPE_CODE;
  private static Map codeLookup = new HashMap();

  static {
    for (JdbcType type : JdbcType.values()) {
      codeLookup.put(type.TYPE_CODE, type);
    }
  }

  JdbcType(int code) {
    this.TYPE_CODE = code;
  }

  public static JdbcType forCode(int code)  {
    return codeLookup.get(code);
  }

}

Types

/**
 * 

The class that defines the constants that are used to identify generic * SQL types, called JDBC types. *

* This class is never instantiated. */ public class Types { /** *

The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type * BIT. */ public final static int BIT = -7; /** *

The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type * TINYINT. */ public final static int TINYINT = -6; /** *

The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type * SMALLINT. */ public final static int SMALLINT = 5; /** *

The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type * INTEGER. */ public final static int INTEGER = 4; /** *

The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type * BIGINT. */ public final static int BIGINT = -5; /** *

The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type * FLOAT. */ public final static int FLOAT = 6; /** *

The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type * REAL. */ public final static int REAL = 7; /** *

The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type * DOUBLE. */ public final static int DOUBLE = 8; /** *

The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type * NUMERIC. */ public final static int NUMERIC = 2; /** *

The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type * DECIMAL. */ public final static int DECIMAL = 3; /** *

The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type * CHAR. */ public final static int CHAR = 1; /** *

The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type * VARCHAR. */ public final static int VARCHAR = 12; /** *

The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type * LONGVARCHAR. */ public final static int LONGVARCHAR = -1; /** *

The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type * DATE. */ public final static int DATE = 91; /** *

The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type * TIME. */ public final static int TIME = 92; /** *

The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type * TIMESTAMP. */ public final static int TIMESTAMP = 93; /** *

The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type * BINARY. */ public final static int BINARY = -2; /** *

The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type * VARBINARY. */ public final static int VARBINARY = -3; /** *

The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type * LONGVARBINARY. */ public final static int LONGVARBINARY = -4; /** *

The constant in the Java programming language * that identifies the generic SQL value * NULL. */ public final static int NULL = 0; /** * The constant in the Java programming language that indicates * that the SQL type is database-specific and * gets mapped to a Java object that can be accessed via * the methods getObject and setObject. */ public final static int OTHER = 1111; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type * JAVA_OBJECT. * @since 1.2 */ public final static int JAVA_OBJECT = 2000; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type * DISTINCT. * @since 1.2 */ public final static int DISTINCT = 2001; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type * STRUCT. * @since 1.2 */ public final static int STRUCT = 2002; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type * ARRAY. * @since 1.2 */ public final static int ARRAY = 2003; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type * BLOB. * @since 1.2 */ public final static int BLOB = 2004; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type * CLOB. * @since 1.2 */ public final static int CLOB = 2005; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type * REF. * @since 1.2 */ public final static int REF = 2006; /** * The constant in the Java programming language, somtimes referred to * as a type code, that identifies the generic SQL type DATALINK. * * @since 1.4 */ public final static int DATALINK = 70; /** * The constant in the Java programming language, somtimes referred to * as a type code, that identifies the generic SQL type BOOLEAN. * * @since 1.4 */ public final static int BOOLEAN = 16; //------------------------- JDBC 4.0 ----------------------------------- /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type ROWID * * @since 1.6 * */ public final static int ROWID = -8; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type NCHAR * * @since 1.6 */ public static final int NCHAR = -15; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type NVARCHAR. * * @since 1.6 */ public static final int NVARCHAR = -9; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type LONGNVARCHAR. * * @since 1.6 */ public static final int LONGNVARCHAR = -16; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type NCLOB. * * @since 1.6 */ public static final int NCLOB = 2011; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type XML. * * @since 1.6 */ public static final int SQLXML = 2009; //--------------------------JDBC 4.2 ----------------------------- /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type {@code REF CURSOR}. * * @since 1.8 */ public static final int REF_CURSOR = 2012; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type * {@code TIME WITH TIMEZONE}. * * @since 1.8 */ public static final int TIME_WITH_TIMEZONE = 2013; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type * {@code TIMESTAMP WITH TIMEZONE}. * * @since 1.8 */ public static final int TIMESTAMP_WITH_TIMEZONE = 2014; // Prevent instantiation private Types() {} }

你可能感兴趣的:(java,postgresql,java)