|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.derby.iapi.types.DataType
org.apache.derby.iapi.types.NumberDataType
org.apache.derby.iapi.types.SQLTinyint
SQLTinyint satisfies the DataValueDescriptor interfaces (i.e., OrderableDataType). It implements a tinyint column, e.g. for storing a column value; it can be specified when constructed to not allow nulls. Nullability cannot be changed after construction, as it affects the storage size and mechanism.
Because OrderableDataType is a subtype of ValueColumn, SQLTinyint can play a role in either a ValueColumn/Row or a OrderableDataType/Row, interchangeably.
We assume the store has a flag for nullness of the value, and simply return a 0-length array for the stored form when the value is null.
Field Summary | |
private static int |
BASE_MEMORY_USAGE
|
private boolean |
isnull
|
(package private) static int |
TINYINT_LENGTH
|
private byte |
value
|
Fields inherited from interface org.apache.derby.iapi.types.NumberDataValue |
MAX_DECIMAL_PRECISION_SCALE, MIN_DECIMAL_DIVIDE_SCALE |
Fields inherited from interface org.apache.derby.iapi.types.Orderable |
ORDER_OP_EQUALS, ORDER_OP_GREATEROREQUALS, ORDER_OP_GREATERTHAN, ORDER_OP_LESSOREQUALS, ORDER_OP_LESSTHAN |
Constructor Summary | |
SQLTinyint()
No-arg constructor, required by Formattable. |
|
SQLTinyint(byte val)
|
|
SQLTinyint(byte val,
boolean isnull)
|
Method Summary | |
NumberDataValue |
divide(NumberDataValue dividend,
NumberDataValue divisor,
NumberDataValue result)
This method implements the / operator for "tinyint / tinyint". |
BooleanDataValue |
equals(DataValueDescriptor left,
DataValueDescriptor right)
The = operator as called from the language module, as opposed to the storage module. |
int |
estimateMemoryUsage()
Estimate the memory usage in bytes of the data value and the overhead of the class. |
java.math.BigDecimal |
getBigDecimal()
Gets the value in the data value descriptor as a BigDecimal. |
boolean |
getBoolean()
Gets the value in the data value descriptor as a boolean. |
byte |
getByte()
Gets the value in the data value descriptor as a byte. |
DataValueDescriptor |
getClone()
Shallow copy. |
double |
getDouble()
Gets the value in the data value descriptor as a double. |
float |
getFloat()
Gets the value in the data value descriptor as a float. |
int |
getInt()
Gets the value in the data value descriptor as an int. |
int |
getLength()
Gets the length of the data value. |
long |
getLong()
Gets the value in the data value descriptor as a long. |
DataValueDescriptor |
getNewNull()
Get a new null value of the same type as this data value. |
java.lang.Object |
getObject()
Gets the value in the data value descriptor as a Java Object. |
short |
getShort()
Gets the value in the data value descriptor as a short. |
java.lang.String |
getString()
Gets the value in the data value descriptor as a String. |
int |
getTypeFormatId()
Return my format identifier. |
java.lang.String |
getTypeName()
Get the SQL name of the datatype |
BooleanDataValue |
greaterOrEquals(DataValueDescriptor left,
DataValueDescriptor right)
The >= operator as called from the language module, as opposed to the storage module. |
BooleanDataValue |
greaterThan(DataValueDescriptor left,
DataValueDescriptor right)
The > operator as called from the language module, as opposed to the storage module. |
int |
hashCode()
|
protected boolean |
isNegative()
This method implements the isNegative method. |
boolean |
isNull()
Return whether the value is null or not. |
BooleanDataValue |
lessOrEquals(DataValueDescriptor left,
DataValueDescriptor right)
The <= operator as called from the language module, as opposed to the storage module. |
BooleanDataValue |
lessThan(DataValueDescriptor left,
DataValueDescriptor right)
The < operator as called from the language module, as opposed to the storage module. |
NumberDataValue |
minus(NumberDataValue result)
This method implements the unary minus operator for tinyint. |
NumberDataValue |
minus(NumberDataValue left,
NumberDataValue right,
NumberDataValue result)
This method implements the - operator for "tinyint - tinyint". |
NumberDataValue |
mod(NumberDataValue dividend,
NumberDataValue divisor,
NumberDataValue result)
mod(tinyint, tinyint) |
BooleanDataValue |
notEquals(DataValueDescriptor left,
DataValueDescriptor right)
The <> operator as called from the language module, as opposed to the storage module. |
NumberDataValue |
plus(NumberDataValue addend1,
NumberDataValue addend2,
NumberDataValue result)
This method implements the + operator for "byte + byte". |
void |
readExternal(java.io.ObjectInput in)
|
void |
readExternalFromArray(ArrayInputStream in)
Read the DataValueDescriptor from the stream. |
void |
restoreToNull()
Restore this object to its (SQL)null value. |
protected void |
setFrom(DataValueDescriptor theValue)
|
void |
setInto(java.sql.PreparedStatement ps,
int position)
Set the value into a PreparedStatement. |
void |
setInto(java.sql.ResultSet rs,
int position)
Set this value into a ResultSet for a subsequent ResultSet.insertRow or ResultSet.updateRow. |
void |
setValue(boolean theValue)
Set the value. |
void |
setValue(byte theValue)
Set the value of this DataValueDescriptor to the given byte value |
void |
setValue(double theValue)
Set the value of this DataValueDescriptor to the given double value |
void |
setValue(float theValue)
Set the value of this DataValueDescriptor to the given double value |
void |
setValue(int theValue)
Set the value of this DataValueDescriptor to the given int value |
void |
setValue(long theValue)
Set the value of this DataValueDescriptor to the given long value |
void |
setValue(java.lang.Object theValue)
Set the value of this DataValueDescriptor to the given value |
void |
setValue(short theValue)
Set the value of this DataValueDescriptor to the given short value |
void |
setValue(java.lang.String theValue)
Set the value of this DataValueDescriptor. |
void |
setValueFromResultSet(java.sql.ResultSet resultSet,
int colNumber,
boolean isNullable)
Set the value based on the value for the specified DataValueDescriptor from the specified ResultSet. |
NumberDataValue |
times(NumberDataValue left,
NumberDataValue right,
NumberDataValue result)
This method implements the * operator for "tinyint * tinyint". |
java.lang.String |
toString()
|
protected int |
typeCompare(DataValueDescriptor arg)
Compare this (not null) to a non-null value. |
int |
typePrecedence()
Each built-in type in JSQL has a precedence. |
void |
writeExternal(java.io.ObjectOutput out)
|
Methods inherited from class org.apache.derby.iapi.types.NumberDataType |
absolute, compare, compare, divide, normalizeDOUBLE, normalizeREAL, normalizeREAL, objectNull, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, sqrt |
Methods inherited from class org.apache.derby.iapi.types.DataType |
checkHostVariable, cloneObject, coalesce, dataTypeConversion, equals, flip, genericSetObject, getBytes, getDate, getNationalString, getStream, getTime, getTimestamp, in, invalidFormat, isNotNull, isNullOp, normalize, outOfRange, setObjectForCast, setToNull, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, throwLangSetMismatch, throwLangSetMismatch |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.apache.derby.iapi.types.DataValueDescriptor |
checkHostVariable, coalesce, getBytes, getDate, getStream, getTime, getTimestamp, in, isNotNull, isNullOp, normalize, setObjectForCast, setToNull, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue |
Field Detail |
static final int TINYINT_LENGTH
private byte value
private boolean isnull
private static final int BASE_MEMORY_USAGE
Constructor Detail |
public SQLTinyint()
public SQLTinyint(byte val)
public SQLTinyint(byte val, boolean isnull)
Method Detail |
public int estimateMemoryUsage()
DataValueDescriptor
public int getInt()
DataValueDescriptor
getInt
in interface DataValueDescriptor
getInt
in class DataType
DataValueDescriptor.getInt()
public byte getByte()
DataValueDescriptor
getByte
in interface DataValueDescriptor
getByte
in class DataType
DataValueDescriptor.getByte()
public short getShort()
DataValueDescriptor
getShort
in interface DataValueDescriptor
getShort
in class DataType
DataValueDescriptor.getShort()
public long getLong()
DataValueDescriptor
getLong
in interface DataValueDescriptor
getLong
in class DataType
DataValueDescriptor.getLong()
public float getFloat()
DataValueDescriptor
getFloat
in interface DataValueDescriptor
getFloat
in class DataType
DataValueDescriptor.getFloat()
public double getDouble()
DataValueDescriptor
getDouble
in interface DataValueDescriptor
getDouble
in class DataType
DataValueDescriptor.getDouble()
public java.math.BigDecimal getBigDecimal()
DataValueDescriptor
getBigDecimal
in interface DataValueDescriptor
getBigDecimal
in class DataType
DataValueDescriptor.getBigDecimal()
public boolean getBoolean()
DataValueDescriptor
getBoolean
in interface DataValueDescriptor
getBoolean
in class DataType
DataValueDescriptor.getBoolean()
public java.lang.String getString()
DataValueDescriptor
DataValueDescriptor.getString()
public int getLength()
DataValueDescriptor
DataValueDescriptor.getLength()
public java.lang.Object getObject()
DataValueDescriptor
getObject
in interface DataValueDescriptor
getObject
in class DataType
DataValueDescriptor.getObject()
public java.lang.String getTypeName()
DataValueDescriptor
public int getTypeFormatId()
TypedFormat.getTypeFormatId()
public boolean isNull()
Storable
Storable.isNull()
public void writeExternal(java.io.ObjectOutput out) throws java.io.IOException
java.io.IOException
public void readExternal(java.io.ObjectInput in) throws java.io.IOException
java.io.IOException
Externalizable.readExternal(java.io.ObjectInput)
public void readExternalFromArray(ArrayInputStream in) throws java.io.IOException
DataValueDescriptor
Initialize the data value by reading it's values from the ArrayInputStream. This interface is provided as a way to achieve possible performance enhancement when reading an array can be optimized over reading from a generic stream from readExternal().
in
- The array stream positioned at the beginning of the
byte stream to read from.
java.io.IOException
- Usual error is if you try to read
past limit on the stream.public void restoreToNull()
Storable
Storable.restoreToNull()
protected int typeCompare(DataValueDescriptor arg) throws StandardException
NumberDataType
typeCompare
in class NumberDataType
StandardException
- Thrown on errorpublic DataValueDescriptor getClone()
DataValueDescriptor
Clone the DataValueDescriptor and copy its contents. We clone the data value wrapper (e.g. SQLDecimal) and reuse its contents (the underlying BigDecimal). The resultant DataValueDescriptor will point to the same value as the original DataValueDescriptor (unless the value is a primitive type, e.g. SQLInteger/integer).
DataValueDescriptor.getClone()
public DataValueDescriptor getNewNull()
DataValueDescriptor
DataValueDescriptor.getNewNull()
public void setValueFromResultSet(java.sql.ResultSet resultSet, int colNumber, boolean isNullable) throws java.sql.SQLException
DataValueDescriptor
resultSet
- The specified ResultSet.colNumber
- The 1-based column # into the resultSet.isNullable
- Whether or not the column is nullable
(No need to call wasNull() if not)
java.sql.SQLException
- Thrown on errorDataValueDescriptor.setValueFromResultSet(java.sql.ResultSet, int, boolean)
public final void setInto(java.sql.PreparedStatement ps, int position) throws java.sql.SQLException
setInto
in interface DataValueDescriptor
setInto
in class DataType
java.sql.SQLException
- Error setting value in PreparedStatementpublic final void setInto(java.sql.ResultSet rs, int position) throws java.sql.SQLException, StandardException
setInto
in interface DataValueDescriptor
setInto
in class DataType
java.sql.SQLException
- thrown by the ResultSet object
StandardException
- thrown by me accessing my value.public void setValue(java.lang.String theValue) throws StandardException
DataValueDescriptor
setValue
in interface DataValueDescriptor
setValue
in class DataType
theValue
- The BigDecimal value to set this DataValueDescriptor to
StandardException
- thrown if string not acceptedpublic void setValue(byte theValue)
DataValueDescriptor
setValue
in interface DataValueDescriptor
setValue
in class DataType
theValue
- The value to set this DataValueDescriptor to
public void setValue(short theValue) throws StandardException
DataValueDescriptor
setValue
in interface DataValueDescriptor
setValue
in class DataType
theValue
- The value to set this DataValueDescriptor to
StandardException
- if outsideRangeForTinyintpublic void setValue(int theValue) throws StandardException
DataValueDescriptor
setValue
in interface DataValueDescriptor
setValue
in class DataType
theValue
- The value to set this DataValueDescriptor to
StandardException
- if outsideRangeForTinyintpublic void setValue(long theValue) throws StandardException
DataValueDescriptor
setValue
in interface DataValueDescriptor
setValue
in class DataType
theValue
- The value to set this DataValueDescriptor to
StandardException
- if outsideRangeForTinyintpublic void setValue(float theValue) throws StandardException
DataValueDescriptor
setValue
in interface DataValueDescriptor
setValue
in class DataType
theValue
- The value to set this DataValueDescriptor to
StandardException
- Thrown on errorNumberDataValue.setValue(java.lang.Integer)
public void setValue(double theValue) throws StandardException
DataValueDescriptor
setValue
in interface DataValueDescriptor
setValue
in class DataType
theValue
- The value to set this DataValueDescriptor to
StandardException
- Thrown on errorNumberDataValue.setValue(java.lang.Integer)
public void setValue(boolean theValue)
DataValueDescriptor
setValue
in interface DataValueDescriptor
setValue
in class DataType
theValue
- Contains the boolean value to set this to
NumberDataValue.setValue(java.lang.Integer)
public void setValue(java.lang.Object theValue) throws StandardException
DataValueDescriptor
setValue
in interface DataValueDescriptor
setValue
in class DataType
StandardException
- Thrown on errorDataValueDescriptor.setValue(java.lang.Object)
protected void setFrom(DataValueDescriptor theValue) throws StandardException
setFrom
in class DataType
StandardException
public int typePrecedence()
DataValueDescriptor
typePrecedence
in interface DataValueDescriptor
typePrecedence
in class DataType
DataValueDescriptor.typePrecedence()
public BooleanDataValue equals(DataValueDescriptor left, DataValueDescriptor right) throws StandardException
equals
in interface DataValueDescriptor
equals
in class DataType
left
- The value on the left side of the =right
- The value on the right side of the =
StandardException
- Thrown on errorpublic BooleanDataValue notEquals(DataValueDescriptor left, DataValueDescriptor right) throws StandardException
notEquals
in interface DataValueDescriptor
notEquals
in class DataType
left
- The value on the left side of the <>right
- The value on the right side of the <>
StandardException
- Thrown on errorpublic BooleanDataValue lessThan(DataValueDescriptor left, DataValueDescriptor right) throws StandardException
lessThan
in interface DataValueDescriptor
lessThan
in class DataType
left
- The value on the left side of the <right
- The value on the right side of the <
StandardException
- Thrown on errorpublic BooleanDataValue greaterThan(DataValueDescriptor left, DataValueDescriptor right) throws StandardException
greaterThan
in interface DataValueDescriptor
greaterThan
in class DataType
left
- The value on the left side of the >right
- The value on the right side of the >
StandardException
- Thrown on errorpublic BooleanDataValue lessOrEquals(DataValueDescriptor left, DataValueDescriptor right) throws StandardException
lessOrEquals
in interface DataValueDescriptor
lessOrEquals
in class DataType
left
- The value on the left side of the <=right
- The value on the right side of the <=
StandardException
- Thrown on errorpublic BooleanDataValue greaterOrEquals(DataValueDescriptor left, DataValueDescriptor right) throws StandardException
greaterOrEquals
in interface DataValueDescriptor
greaterOrEquals
in class DataType
left
- The value on the left side of the >=right
- The value on the right side of the >=
StandardException
- Thrown on errorpublic NumberDataValue plus(NumberDataValue addend1, NumberDataValue addend2, NumberDataValue result) throws StandardException
addend1
- One of the addendsaddend2
- The other addendresult
- The result of a previous call to this method, null
if not called yet
StandardException
- Thrown on errorpublic NumberDataValue minus(NumberDataValue left, NumberDataValue right, NumberDataValue result) throws StandardException
left
- The value to be subtracted fromright
- The value to be subtractedresult
- The result of a previous call to this method, null
if not called yet
StandardException
- Thrown on errorpublic NumberDataValue times(NumberDataValue left, NumberDataValue right, NumberDataValue result) throws StandardException
left
- The first value to be multipliedright
- The second value to be multipliedresult
- The result of a previous call to this method, null
if not called yet
StandardException
- Thrown on errorpublic NumberDataValue divide(NumberDataValue dividend, NumberDataValue divisor, NumberDataValue result) throws StandardException
dividend
- The numeratordivisor
- The denominatorresult
- The result of a previous call to this method, null
if not called yet
StandardException
- Thrown on errorpublic NumberDataValue mod(NumberDataValue dividend, NumberDataValue divisor, NumberDataValue result) throws StandardException
mod
in interface NumberDataValue
mod
in class NumberDataType
StandardException
public NumberDataValue minus(NumberDataValue result) throws StandardException
result
- The result of a previous call to this method, null
if not called yet
StandardException
- Thrown on errorprotected boolean isNegative()
isNegative
in class NumberDataType
public java.lang.String toString()
public int hashCode()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |