Package net.sourceforge.jtds.jdbc
Class TypeInfo
java.lang.Object
net.sourceforge.jtds.jdbc.TypeInfo
- All Implemented Interfaces:
Comparable
Represents an SQL data type as required by
getTypeInfo()
.
Provides a suitable natural ordering.
This class probably shouldn't be public, but is required to be so by the
tests.- Version:
- $Id: TypeInfo.java,v 1.5 2005-07-27 11:02:34 alin_sinpalean Exp $
- Author:
- David Eaves
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final boolean
private final boolean
private final String
private final int
private final int
private final boolean
private final String
private final String
private final String
private final short
private final short
private final int
private final short
(package private) static final int
private final int
private final int
private final short
private final int
private final int
private final String
private final boolean
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate int
compare
(int i1, int i2) int
Comparable implementation that orders by dataType, then by how closely the data type maps to the corresponding JDBC SQL type.private int
Determine how close this type is to the corresponding JDBC type.boolean
int
hashCode()
static int
normalizeDataType
(int serverDataType, boolean useLOBs) Return aTypes
-defined type for an SQL Server specific data type.toString()
void
-
Field Details
-
NUM_COLS
static final int NUM_COLS- See Also:
-
typeName
-
dataType
private final int dataType -
precision
private final int precision -
literalPrefix
-
literalSuffix
-
createParams
-
nullable
private final short nullable -
caseSensitive
private final boolean caseSensitive -
searchable
private final short searchable -
unsigned
private final boolean unsigned -
fixedPrecScale
private final boolean fixedPrecScale -
autoIncrement
private final boolean autoIncrement -
localTypeName
-
minimumScale
private final short minimumScale -
maximumScale
private final short maximumScale -
sqlDataType
private final int sqlDataType -
sqlDatetimeSub
private final int sqlDatetimeSub -
numPrecRadix
private final int numPrecRadix -
normalizedType
private final int normalizedType -
distanceFromJdbcType
private final int distanceFromJdbcType
-
-
Constructor Details
-
TypeInfo
- Throws:
SQLException
-
TypeInfo
For testing only. Create an instance with just the properties utilised in thecompareTo()
method (set name, type, and auto increment).
-
-
Method Details
-
equals
-
hashCode
public int hashCode() -
toString
-
update
- Throws:
SQLException
-
compareTo
Comparable implementation that orders by dataType, then by how closely the data type maps to the corresponding JDBC SQL type. The data type values for the non-standard SQL Server types tend to have negative numbers while the corresponding standard types have positive numbers so utilise that in the sorting.- Specified by:
compareTo
in interfaceComparable
-
compare
private int compare(int i1, int i2) -
determineDistanceFromJdbcType
private int determineDistanceFromJdbcType()Determine how close this type is to the corresponding JDBC type. Used in sorting to distinguish between types that have the samenormalizedType
value.- Returns:
- positive integer indicating how far away the type is from the corresponding JDBC type, with zero being the nearest possible match and 9 being the least
-
normalizeDataType
public static int normalizeDataType(int serverDataType, boolean useLOBs) Return aTypes
-defined type for an SQL Server specific data type.- Parameters:
serverDataType
- the data type, as returned by the serveruseLOBs
- whether LOB data types are used for large types- Returns:
- the equivalent data type defined by
java.sql.Types
-