The following table provides getTypeInfo() results for all Db2 databases supported by the Db2 driver.

Table 1. getTypeInfo() for Db2

TYPE_NAME = bigint

  • AUTO_INCREMENT = false
  • CASE_SENSITIVE = false
  • CREATE_PARAMS = NULL
  • DATA_TYPE = -5 (BIGINT)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = NULL
  • LITERAL_SUFFIX = NULL
  • LOCAL_TYPE_NAME = bigint
  • MAXIMUM_SCALE = 0
 
  • MINIMUM_SCALE = 0
  • NULLABLE = 1
  • NUM_PREC_RADIX = NULL
  • PRECISION = 19
  • SEARCHABLE = 2
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = false
 

TYPE_NAME = binary 1

  • AUTO_INCREMENT = false
  • CASE_SENSITIVE = false
  • CREATE_PARAMS = length
  • DATA_TYPE = -2 (BINARY)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = BINARY(X'
  • LITERAL_SUFFIX = ')
  • LOCAL_TYPE_NAME = binary
  • MAXIMUM_SCALE = NULL
 
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = NULL
  • PRECISION = 255
  • SEARCHABLE = 3
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = NULL

TYPE_NAME = blob

  • AUTO_INCREMENT = NULL
  • CASE_SENSITIVE = false
  • CREATE_PARAMS = (length)
  • DATA_TYPE = 2004 (BLOB)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = NULL
  • LITERAL_SUFFIX = NULL
  • LOCAL_TYPE_NAME = BLOB
  • MAXIMUM_SCALE = NULL
  •  
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = NULL
  • PRECISION = 2147483647
  • SEARCHABLE = 1
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = NULL

TYPE_NAME = char

  • AUTO_INCREMENT = NULL
  • CASE_SENSITIVE = true
  • CREATE_PARAMS = (length)
  • DATA_TYPE = 1 (CHAR)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = '
  • LITERAL_SUFFIX = '
  • LOCAL_TYPE_NAME = char
  • MAXIMUM_SCALE = NULL
 
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = NULL
  • PRECISION =
  • 254 (DB2 for Linux/UNIX/Windows),
  • 255 (DB2 for z/OS),
  • 32765 (DB2 for i)
  • SEARCHABLE = 3
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = NULL

TYPE_NAME = char() for bit data

  • AUTO_INCREMENT = NULL
  • NULL CASE_SENSITIVE = false
  • CREATE_PARAMS = (length)
  • DATA_TYPE = -2 (BINARY)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = X'
  • LITERAL_SUFFIX = '
  • LOCAL_TYPE_NAME = char() for bit data
  • MAXIMUM_SCALE = NULL
 
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = NULL
  • PRECISION =
  • 254 (Db2 for Linux/UNIX/Windows),
  • 254 (Db2 for z/OS),
  • 32765 (Db2 for i)
  • SEARCHABLE = 3
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = NULL

TYPE_NAME = clob

  • AUTO_INCREMENT = NULL
  • CASE_SENSITIVE = true
  • CREATE_PARAMS = (length)
  • DATA_TYPE = 2005 (CLOB)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = '
  • LITERAL_SUFFIX = '
  • LOCAL_TYPE_NAME = clob
  • MAXIMUM_SCALE = NULL
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = NULL
  • PRECISION = 2147483647
  • SEARCHABLE = 1
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = NULL

TYPE_NAME = date

  • AUTO_INCREMENT = NULL
  • CASE_SENSITIVE = false
  • CREATE_PARAMS = NULL
  • DATA_TYPE = 91 (DATE)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = {d ' LITERAL_SUFFIX = '}
  • LOCAL_TYPE_NAME = date
  • MAXIMUM_SCALE = NULL
 
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = NULL
  • PRECISION = 10
  • SEARCHABLE = 2
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = NULL
TYPE_NAME = dbclob
  • AUTO_INCREMENT = NULL
  • CASE_SENSITIVE = true
  • CREATE_PARAMS =
  • (length) (Db2 for Linux/UNIX/Windows
  • and Db2 for z/OS),
  • (length) CCSID 13488 (Db2 for i)
  • DATA_TYPE = 2005 (CLOB) 2
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = '
  • LITERAL_SUFFIX = '
  • LOCAL_TYPE_NAME = dbclob
  • MAXIMUM_SCALE = NULL
 
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = NULL
  • PRECISION = 2147483647
  • SEARCHABLE = 1
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = NULL

TYPE_NAME = decfloat

  • AUTO_INCREMENT = false
  • CASE_SENSITIVE = false
  • CREATE_PARAMS = precision
  • DATA_TYPE = 3 (DECIMAL)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = NULL
  • LITERAL_SUFFIX = NULL
  • LOCAL_TYPE_NAME = NULL
  • MAXIMUM_SCALE = 0
 
  • MINIMUM_SCALE = 0
  • NULLABLE = 1
  • NUM_PREC_RADIX = 2
  • PRECISION = 53
  • SEARCHABLE = 2
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = false

TYPE_NAME = decimal

  • AUTO_INCREMENT = false
  • CASE_SENSITIVE = false
  • CREATE_PARAMS = (precision,scale)
  • DATA_TYPE = 3 (DECIMAL)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = NULL
  • LITERAL_SUFFIX = NULL
  • LOCAL_TYPE_NAME = decimal
  • MAXIMUM_SCALE = 31
 
  • MINIMUM_SCALE = 0
  • NULLABLE = 1
  • NUM_PREC_RADIX = 10
  • PRECISION = 31
  • SEARCHABLE = 2
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = false

TYPE_NAME = double

  • AUTO_INCREMENT = false
  • CASE_SENSITIVE = false
  • CREATE_PARAMS = NULL
  • DATA_TYPE = 8 (DOUBLE)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = NULL
  • LITERAL_SUFFIX = NULL
  • LOCAL_TYPE_NAME = double
  • MAXIMUM_SCALE = NULL
 
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = 2
  • PRECISION = 53
  • SEARCHABLE = 2
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = false

TYPE_NAME = float

  • AUTO_INCREMENT = false
  • CASE_SENSITIVE = false
  • CREATE_PARAMS = NULL
  • DATA_TYPE = 8 (DOUBLE)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = NULL
  • LITERAL_SUFFIX = NULL
  • LOCAL_TYPE_NAME = float
  • MAXIMUM_SCALE = NULL
 
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = 10
  • PRECISION = 15
  • SEARCHABLE = 2
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = false

TYPE_NAME = graphic

  • AUTO_INCREMENT = NULL
  • CASE_SENSITIVE = true
  • CREATE_PARAMS = length
  • DATA_TYPE = 1 (CHAR)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = '
  • LITERAL_SUFFIX = '
  • LOCAL_TYPE_NAME = char
  • MAXIMUM_SCALE = NULL
 
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = NULL
  • PRECISION =
  • 127 (DB2 for Linux/UNIX/Windows),
  • 127 (Db2 for z/OS),
  • 16383 (Db2 for i)
  • SEARCHABLE = 3
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = NULL

TYPE_NAME = integer

  • AUTO_INCREMENT = false
  • CASE_SENSITIVE = false
  • CREATE_PARAMS = NULL
  • DATA_TYPE = 4 (INTEGER)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = NULL
  • LITERAL_SUFFIX = NULL
  • LOCAL_TYPE_NAME = integer
  • MAXIMUM_SCALE = 0
 
  • MINIMUM_SCALE = 0
  • NULLABLE = 1
  • NUM_PREC_RADIX = 10
  • PRECISION = 10
  • SEARCHABLE = 2
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = false
TYPE_NAME = long varchar
  • AUTO_INCREMENT = NULL
  • CASE_SENSITIVE = true
  • CREATE_PARAMS = NULL
  • DATA_TYPE = -1 (LONGVARCHAR)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = '
  • LITERAL_SUFFIX = '
  • LOCAL_TYPE_NAME = long varchar
  • MAXIMUM_SCALE = NULL
 
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = NULL
  • PRECISION =
  • 32700 (DB2 for Linux/UNIX/Windows),
  • 32704 (DB2 for z/OS),
  • 32700 (DB2 for i)
  • SEARCHABLE = 1
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = NULL
TYPE_NAME = long varchar for bit data
  • AUTO_INCREMENT = NULL
  • CASE_SENSITIVE = false
  • CREATE_PARAMS = NULL
  • DATA_TYPE = -4 (LONGVARBINARY)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = X'
  • LITERAL_SUFFIX = '
  • LOCAL_TYPE_NAME = long varchar for bit data
  • MAXIMUM_SCALE = NULL
 
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = NULL
  • PRECISION =
  • 32700 (Db2 for Linux/UNIX/Windows),
  • 32698 (Db2 for z/OS),
  • 32739 (Db2 for i)
  • SEARCHABLE = 1
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = NULL

TYPE_NAME = long vargraphic

  • AUTO_INCREMENT = NULL
  • CASE_SENSITIVE = true
  • CREATE_PARAMS = length
  • DATA_TYPE = -1 (LONGVARCHAR) 3
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = '
  • LITERAL_SUFFIX = '
  • LOCAL_TYPE_NAME = longvarchar
  • MAXIMUM_SCALE = NULL
 
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = NULL
  • PRECISION = 16352 (Db2 for z/OS), 16370 (Db2 for i), 16336 (Db2 for Linux/UNIX/Windows)
  • SEARCHABLE = 1
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = NULL

TYPE_NAME = numeric

  • AUTO_INCREMENT = false
  • CASE_SENSITIVE = false
  • CREATE_PARAMS = (precision,scale)
  • DATA_TYPE = 2 (NUMERIC)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = NULL
  • LITERAL_SUFFIX = NULL
  • LOCAL_TYPE_NAME = numeric
  • MAXIMUM_SCALE = 31
 
  • MINIMUM_SCALE = 0
  • NULLABLE = 1
  • NUM_PREC_RADIX =10
  • PRECISION = 31
  • SEARCHABLE = 2
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = false
 

TYPE_NAME = real

  • AUTO_INCREMENT = false
  • CASE_SENSITIVE = false
  • CREATE_PARAMS = NULL
  • DATA_TYPE = 7 (REAL)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = NULL
  • LITERAL_SUFFIX = NULL
  • LOCAL_TYPE_NAME = float(4)
  • MAXIMUM_SCALE = NULL
 
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = 2
  • PRECISION = 24
  • SEARCHABLE = 2
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = false

TYPE_NAME = rowid 4

  • AUTO_INCREMENT = false
  • CASE_SENSITIVE = false
  • CREATE_PARAMS = not null generated always
  • DATA_TYPE = -2 (Binary)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = NULL
  • LITERAL_SUFFIX = NULL
  • LOCAL_TYPE_NAME = rowid
  • MAXIMUM_SCALE = NULL
 
  • MINIMUM_SCALE = NULL
  • NULLABLE = 0
  • NUM_PREC_RADIX = NULL
  • PRECISION = 40
  • SEARCHABLE = 2
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = true

TYPE_NAME = smallint

  • AUTO_INCREMENT = false
  • CASE_SENSITIVE = false
  • CREATE_PARAMS = NULL
  • DATA_TYPE = 5 (SMALLINT)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = NULL
  • LITERAL_SUFFIX = NULL
  • LOCAL_TYPE_NAME = smallint
  • MAXIMUM_SCALE = 0
 
  • MINIMUM_SCALE = 0
  • NULLABLE = 1
  • NUM_PREC_RADIX = 10
  • PRECISION = 5
  • SEARCHABLE = 2
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = false

TYPE_NAME = time

  • AUTO_INCREMENT = NULL
  • CASE_SENSITIVE = false
  • CREATE_PARAMS = NULL
  • DATA_TYPE = 92 (TIME)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = {t ' LITERAL_SUFFIX = '}
  • LOCAL_TYPE_NAME = time
  • MAXIMUM_SCALE = NULL
 
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = NULL
  • PRECISION = 8
  • SEARCHABLE = 2
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = NULL

TYPE_NAME = timestamp 5

  • AUTO_INCREMENT = NULL
  • CASE_SENSITIVE = false
  • CREATE_PARAMS = NULL
  • DATA_TYPE = 93 (TIMESTAMP)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = {ts '
  • LITERAL_SUFFIX = '}
  • LOCAL_TYPE_NAME = timestamp
  • MAXIMUM_SCALE = 6
 
  • MINIMUM_SCALE = 6
  • NULLABLE = 1
  • NUM_PREC_RADIX = NULL
  • PRECISION = 26
  • SEARCHABLE = 2
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = NULL

TYPE_NAME = varbinary

  • AUTO_INCREMENT = false
  • CASE_SENSITIVE = false
  • CREATE_PARAMS = length
  • DATA_TYPE = -3 (VARBINARY)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = VARBINARY(X'
  • LITERAL_SUFFIX = ')
  • LOCAL_TYPE_NAME = varbinary
  • MAXIMUM_SCALE = NULL
 
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = NULL
  • PRECISION = 32703
  • SEARCHABLE = 3
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = NULL

TYPE_NAME = varchar

  • AUTO_INCREMENT = NULL
  • CASE_SENSITIVE = true
  • CREATE_PARAMS = (max length)
  • DATA_TYPE = 12 (VARCHAR)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = '
  • LITERAL_SUFFIX = '
  • LOCAL_TYPE_NAME = varchar
  • MAXIMUM_SCALE = NULL
 
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = NULL
  • PRECISION =
  • 32672 (Db2 for Linux/UNIX/Windows),
  • 32698 (Db2 for z/OS),
  • 32739 (Db2 for i)
  • SEARCHABLE =
  • 3 (Db2 for Linux/UNIX/Windows),
  • 1 (Db2 for z/OS),
  • 1 (Db2 for i)
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = NULL

TYPE_NAME = varchar() for bit data

  • AUTO_INCREMENT = NULL
  • CASE_SENSITIVE = false
  • CREATE_PARAMS = (max length)
  • DATA_TYPE = -3 (VARBINARY)
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = X'
  • LITERAL_SUFFIX = '
  • LOCAL_TYPE_NAME = varchar() for bit data
  • MAXIMUM_SCALE = NULL
 
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = NULL
  • PRECISION =
  • 32672 (Db2 for Linux/UNIX/Windows),
  • 32698 (Db2 for z/OS),
  • 32739 (Db2 for i)
  • SEARCHABLE = 3
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = NULL

TYPE_NAME = vargraphic

  • AUTO_INCREMENT = NULL
  • CASE_SENSITIVE = true
  • CREATE_PARAMS = length
  • DATA_TYPE = 12 (VARCHAR) 6
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = '
  • LITERAL_SUFFIX = '
  • LOCAL_TYPE_NAME = varchar
  • MAXIMUM_SCALE = NULL
 
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = NULL
  • PRECISION = 16352
  • SEARCHABLE = 3
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = NULL

TYPE_NAME = xml 7

  • AUTO_INCREMENT = false
  • CASE_SENSITIVE = true
  • CREATE_PARAMS = NULL
  • DATA_TYPE = 2005 (CLOB) or 2009 (SQLXML) 8
  • FIXED_PREC_SCALE = false
  • LITERAL_PREFIX = NULL
  • LITERAL_SUFFIX = NULL
  • LOCAL_TYPE_NAME = xml
  • MAXIMUM_SCALE = NULL
 
  • MINIMUM_SCALE = NULL
  • NULLABLE = 1
  • NUM_PREC_RADIX = NULL
  • PRECISION = 2147483647
  • SEARCHABLE = 1
  • SQL_DATA_TYPE = NULL
  • SQL_DATETIME_SUB = NULL
  • UNSIGNED_ATTRIBUTE = NULL
1 Supported only for Db2 for z/OS.
2 If JDBCBehavior=0, the value returned for DATA_TYPE is 2011 (NCLOB). If JDBCBehavior=1, the value returned is 2005 (CLOB).
3 If JDBCBehavior=0, the value returned for DATA_TYPE is -16 (LONGNVARCHAR). If JDBCBehavior=1 the value returned is -1 (LONGVARCHAR).
4 Supported only for Db2 for z/OS and Db2 for i.
5 By default, the driver reports the data type as VARCHAR (type code 12) and sets scale/DECIMAL_DIGITS to 0 in all metadata APIs (DatabaseMetaData, ParameterMetaData, and ResultSetMetaData) when the scale exceeds 9. For scales of 9 or less, the driver reports the data type as TIMESTAMP (type code 93). In each case, the returned values retain their full precision. This default behavior may be modified with the TimestampScaleGT9Behavior connection property. See TimestampScaleGT9Behavior for details.
6 If JDBCBehavior=0, the value returned for DATA_TYPE is -9 (NVARCHAR). If JDBCBehavior=1, the value returned is 12 (VARCHAR).
7 Supported only for Db2 for Linux/UNIX/Windows and Db2 for i V7R1 and higher.
8 If JDBCBehavior=0, the value returned for DATA_TYPE is 2009 (SQLXML). If JDBCBehavior=1, the value returned is 2005 (CLOB). In addition, the XMLDescribeType property can override driver mappings.