⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sqltinyint.java

📁 derby database source code.good for you.
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
	/**		@exception StandardException if outsideRangeForTinyint	 */	public void setValue(int theValue) throws StandardException	{		if (theValue > Byte.MAX_VALUE || theValue < Byte.MIN_VALUE)			throw StandardException.newException(SQLState.LANG_OUTSIDE_RANGE_FOR_DATATYPE, "TINYINT");		value = (byte)theValue;		isnull = false;	}	/**		@exception StandardException if outsideRangeForTinyint	 */	public void setValue(long theValue) throws StandardException	{		if (theValue > Byte.MAX_VALUE || theValue < Byte.MIN_VALUE)			throw StandardException.newException(SQLState.LANG_OUTSIDE_RANGE_FOR_DATATYPE, "TINYINT");		value = (byte)theValue;		isnull = false;	}	/**	 * @see NumberDataValue#setValue	 *	 * @exception StandardException		Thrown on error	 */	public void setValue(float theValue) throws StandardException	{		theValue = NumberDataType.normalizeREAL(theValue);		if (theValue > Byte.MAX_VALUE || theValue < Byte.MIN_VALUE)			throw StandardException.newException(SQLState.LANG_OUTSIDE_RANGE_FOR_DATATYPE, "TINYINT");		float floorValue = (float)Math.floor(theValue);		value = (byte)floorValue;		isnull = false;	}	/**	 * @see NumberDataValue#setValue	 *	 * @exception StandardException		Thrown on error	 */	public void setValue(double theValue) throws StandardException	{		theValue = NumberDataType.normalizeDOUBLE(theValue);		if (theValue > Byte.MAX_VALUE || theValue < Byte.MIN_VALUE)			throw outOfRange();		double floorValue = Math.floor(theValue);		value = (byte)floorValue;		isnull = false;	}	/**	 * @see NumberDataValue#setValue	 *	 */	public void setValue(boolean theValue)	{		value = theValue?(byte)1:(byte)0;		isnull = false;	}	/**	 * @see DataValueDescriptor#setValue	 *	 * @exception StandardException		Thrown on error	 */		public void setValue(Object theValue)		throws StandardException	{		if (theValue == null)		{			setToNull();		}		else if (theValue instanceof Number)		{			this.setValue(((Number)theValue).byteValue());		}		else		{			genericSetObject(theValue);		}	}	protected void setFrom(DataValueDescriptor theValue) throws StandardException {		setValue(theValue.getByte());	}	/*	 * DataValueDescriptor interface	 */	/** @see DataValueDescriptor#typePrecedence */	public int typePrecedence()	{		return TypeId.TINYINT_PRECEDENCE;	}	/*	** SQL Operators	*/	/**	 * The = operator as called from the language module, as opposed to	 * the storage module.	 *	 * @param left			The value on the left side of the =	 * @param right			The value on the right side of the =	 *	 * @return	A SQL boolean value telling whether the two parameters are equal	 *	 * @exception StandardException		Thrown on error	 */	public BooleanDataValue equals(DataValueDescriptor left,							DataValueDescriptor right)			throws StandardException	{		return SQLBoolean.truthValue(left,									 right,									 left.getByte() == right.getByte());	}	/**	 * The <> operator as called from the language module, as opposed to	 * the storage module.	 *	 * @param left			The value on the left side of the <>	 * @param right			The value on the right side of the <>	 *	 * @return	A SQL boolean value telling whether the two parameters	 *			are not equal	 *	 * @exception StandardException		Thrown on error	 */	public BooleanDataValue notEquals(DataValueDescriptor left,							DataValueDescriptor right)			throws StandardException	{		return SQLBoolean.truthValue(left,									 right,									 left.getByte() != right.getByte());	}	/**	 * The < operator as called from the language module, as opposed to	 * the storage module.	 *	 * @param left			The value on the left side of the <	 * @param right			The value on the right side of the <	 *	 * @return	A SQL boolean value telling whether the first operand is less	 *			than the second operand	 *	 * @exception StandardException		Thrown on error	 */	public BooleanDataValue lessThan(DataValueDescriptor left,							DataValueDescriptor right)			throws StandardException	{		return SQLBoolean.truthValue(left,									 right,									 left.getByte() < right.getByte());	}	/**	 * The > operator as called from the language module, as opposed to	 * the storage module.	 *	 * @param left			The value on the left side of the >	 * @param right			The value on the right side of the >	 *	 * @return	A SQL boolean value telling whether the first operand is greater	 *			than the second operand	 *	 * @exception StandardException		Thrown on error	 */	public BooleanDataValue greaterThan(DataValueDescriptor left,							DataValueDescriptor right)			throws StandardException	{		return SQLBoolean.truthValue(left,									 right,									 left.getByte() > right.getByte());	}	/**	 * The <= operator as called from the language module, as opposed to	 * the storage module.	 *	 * @param left			The value on the left side of the <=	 * @param right			The value on the right side of the <=	 *	 * @return	A SQL boolean value telling whether the first operand is less	 *			than or equal to the second operand	 *	 * @exception StandardException		Thrown on error	 */	public BooleanDataValue lessOrEquals(DataValueDescriptor left,							DataValueDescriptor right)			throws StandardException	{		return SQLBoolean.truthValue(left,									 right,									 left.getByte() <= right.getByte());	}	/**	 * The >= operator as called from the language module, as opposed to	 * the storage module.	 *	 * @param left			The value on the left side of the >=	 * @param right			The value on the right side of the >=	 *	 * @return	A SQL boolean value telling whether the first operand is greater	 *			than or equal to the second operand	 *	 * @exception StandardException		Thrown on error	 */	public BooleanDataValue greaterOrEquals(DataValueDescriptor left,							DataValueDescriptor right)			throws StandardException	{		return SQLBoolean.truthValue(left,									 right,									 left.getByte() >= right.getByte());	}	/**	 * This method implements the * operator for "tinyint * tinyint".	 *	 * @param left	The first value to be multiplied	 * @param right	The second value to be multiplied	 * @param result	The result of a previous call to this method, null	 *					if not called yet	 *	 * @return	A SQLTinyint containing the result of the multiplication	 *	 * @exception StandardException		Thrown on error	 */	public NumberDataValue times(NumberDataValue left,							NumberDataValue right,							NumberDataValue result)				throws StandardException	{		if (result == null)		{			result = new SQLTinyint();		}		if (left.isNull() || right.isNull())		{			result.setToNull();			return result;		}		/*		** Java does not check for overflow with integral types. We have to		** check the result ourselves.		**		** The product of 2 bytes is an int, so we check to see if the product		** is in the range of values for a byte.		*/		int product = left.getByte() * right.getByte();		result.setValue(product);		return result;	}	/**		mod(tinyint, tinyint)	*/	public NumberDataValue mod(NumberDataValue dividend,							 NumberDataValue divisor,							 NumberDataValue result)				throws StandardException	{		if (result == null)		{			result = new SQLTinyint();		}		if (dividend.isNull() || divisor.isNull())		{			result.setToNull();			return result;		}		/* Catch divide by 0 */		byte byteDivisor = divisor.getByte();		if (byteDivisor == 0)		{			throw StandardException.newException(SQLState.LANG_DIVIDE_BY_ZERO);		}		result.setValue(dividend.getByte() % byteDivisor);		return result;	}	/**	 * This method implements the unary minus operator for tinyint.	 *	 * @param result	The result of a previous call to this method, null	 *					if not called yet	 *	 * @return	A SQLTinyint containing the result of the division	 *	 * @exception StandardException		Thrown on error	 */	public NumberDataValue minus(NumberDataValue result)									throws StandardException	{		if (result == null)		{			result = new SQLTinyint();		}		if (this.isNull())		{			result.setToNull();			return result;		}		int operandValue = this.getByte();		result.setValue(-operandValue);		return result;	}    /**     * This method implements the isNegative method.     *     * @return  A boolean.  If this.value is negative, return true.     *          For positive values or null, return false.     */    protected boolean isNegative()    {        return !isNull() && value < 0;    }	/*	 * String display of value	 */	public String toString()	{		if (isNull())			return "NULL";		else			return Byte.toString(value);	}	/*	 * Hash code	 */	public int hashCode()	{		return (int) value;	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -