Class ParameterLiteral
java.lang.Object
org.datanucleus.store.rdbms.sql.expression.SQLExpression
org.datanucleus.store.rdbms.sql.expression.ParameterLiteral
- All Implemented Interfaces:
SQLLiteral
Representation of a literal representing a parameter where we don't know the type of the parameter yet.
This literal doesn't have a long lifetime, being replaced during the process of conversion to SQL
using the compared expression to define the mapping (and hence which literal type) to use.
-
Nested Class Summary
Nested classes/interfaces inherited from class SQLExpression
SQLExpression.ColumnExpressionList -
Field Summary
FieldsFields inherited from class SQLExpression
lowestOperator, mapping, parameterName, st, stmt, subExprs, table -
Constructor Summary
ConstructorsConstructorDescriptionParameterLiteral(SQLStatement stmt, JavaTypeMapping mapping, Object value, String parameterName) Constructor for an integer literal with a value. -
Method Summary
Modifier and TypeMethodDescriptionadd(SQLExpression expr) Additive Operator.eq(SQLExpression expr) Equality operator (equals to)ge(SQLExpression expr) Relational operator (greater than or equals)getName()getValue()Accessor to the literal valuegt(SQLExpression expr) Relational operator (greater than)le(SQLExpression expr) Relational operator (lower than or equals)lt(SQLExpression expr) Relational operator (lower than)ne(SQLExpression expr) Not equality operator (not equals to)voidvoidMethod to set this literal as not being a parameter.Methods inherited from class SQLExpression
and, bitAnd, bitOr, cast, com, distinct, div, encloseInParentheses, eor, getJavaTypeMapping, getLowestOperator, getNumberOfSubExpressions, getParameterName, getSQLStatement, getSQLTable, getSubExpression, in, invoke, ior, is, isParameter, mod, mul, neg, not, setJavaTypeMapping, sub, toSQLText, unDistinct
-
Field Details
-
name
Parameter name. -
value
-
-
Constructor Details
-
ParameterLiteral
public ParameterLiteral(SQLStatement stmt, JavaTypeMapping mapping, Object value, String parameterName) Constructor for an integer literal with a value.- Parameters:
stmt- the SQL statementmapping- the mappingvalue- the valueparameterName- Name of the parameter that this represents if any (as JDBC "?")
-
-
Method Details
-
setName
-
getName
-
getValue
Description copied from interface:SQLLiteralAccessor to the literal value- Specified by:
getValuein interfaceSQLLiteral- Returns:
- the value of the literal
-
add
Description copied from class:SQLExpressionAdditive Operator. The binary + operator performs addition when applied to two operands of numeric type, producing the sum of the operands. If the type of either operand of a + operator is String, then the operation is string concatenation.- Overrides:
addin classSQLExpression- Parameters:
expr- the right-hand operand- Returns:
- If one of the operands is String, the returned value is the string concatenation; The sum of two operands of numeric type. The left-hand operand is the minuend and the right-hand operand is the subtrahend;
-
eq
Description copied from class:SQLExpressionEquality operator (equals to)- Overrides:
eqin classSQLExpression- Parameters:
expr- the right-hand operand- Returns:
- The type of an equality expression is a boolean
-
ge
Description copied from class:SQLExpressionRelational operator (greater than or equals)- Overrides:
gein classSQLExpression- Parameters:
expr- the right-hand operand- Returns:
- true if the value of the left-hand operand is greater than or equal the value of the right-hand operand, and otherwise is false.
-
gt
Description copied from class:SQLExpressionRelational operator (greater than)- Overrides:
gtin classSQLExpression- Parameters:
expr- the right-hand operand- Returns:
- true if the value of the left-hand operand is greater than the value of the right-hand operand, and otherwise is false.
-
le
Description copied from class:SQLExpressionRelational operator (lower than or equals)- Overrides:
lein classSQLExpression- Parameters:
expr- the right-hand operand- Returns:
- true if the value of the left-hand operand is less than or equal to the value of the right-hand operand, and otherwise is false.
-
lt
Description copied from class:SQLExpressionRelational operator (lower than)- Overrides:
ltin classSQLExpression- Parameters:
expr- the right-hand operand- Returns:
- true if the value of the left-hand operand is less than the value of the right-hand operand, and otherwise is false.
-
ne
Description copied from class:SQLExpressionNot equality operator (not equals to)- Overrides:
nein classSQLExpression- Parameters:
expr- the right-hand operand- Returns:
- The type of an equality expression is a boolean
-
setNotParameter
public void setNotParameter()Description copied from interface:SQLLiteralMethod to set this literal as not being a parameter. If the literal if not currently a parameter then does nothing. Updates any underlying SQL to have the value.- Specified by:
setNotParameterin interfaceSQLLiteral
-