A set of tables and function references that make up the resources made
available by a table expression. When a SelectQueriable is prepared this
object is created and is used to dereference names to sources. It also
has the ability to chain to another TableExpressionFromSet and resolve
references over a complex sub-query hierarchy.
author: Tobias Downer
expressionQualifier() Returns an ExpressionPreparer that qualifies all variables in an
expression to either a qualified Variable or a CorrelatedVariable object.
globalResolveReference(int level, Variable v) Resolves the given Variable reference within the chained list of
TableExpressionFromSet objects to a CorrelatedVariable.
qualifyVariable(Variable v_in) Attempts to qualify the given Variable object to a value found either
in this from set, or a value in the parent from set.
resolveTableColumnReference(Variable v) Resolves the given Variable against the table columns in this from set.
If the variable does not resolve to anything 'null' is returned.
Adds a function resource to the set. Note that is possible for there to
be references in the 'expression' that do not reference resources in this
set. For example, a correlated reference.
Adds a variable in this from set that is exposed to the outside. This
list should contain all references from the SELECT ... part of the
query. For example, SELECT a, b, (a + 1) d exposes variables
a, b and d.
Returns the first FromTableInterface object that matches the given schema,
table reference. Returns null if no objects with the given schema/name
reference match.
Returns a Variable[] array for each variable that is exposed in this
from set. This is a list of fully qualified variables that are
referencable from the final result of the table expression.
Resolves the given Variable reference within the chained list of
TableExpressionFromSet objects to a CorrelatedVariable. If the reference
is not found in this set the method recurses to the parent set. The first
unambiguous reference is returned.
If resolution is ambiguous within a set, a StatementException is thrown.
Returns null if the reference could not be resolved.
Attempts to qualify the given Variable object to a value found either
in this from set, or a value in the parent from set. A variable that
is qualified by the parent is called a correlated variable. Any
correlated variables that are successfully qualified are returned as
CorrelatedVariable objects.
Resolves the given Variable object to a fully resolved Variable
within the context of this table expression. If the variable does not
resolve to anything 'null' is returned. If the variable is ambiguous, a
StatementException is thrown.
If the variable name references a table column, an expression with a
single Variable element is returned. If the variable name references a
function, an expression of the function is returned.
Note that the given variable does not have to be fully qualified but the
returned expressions are fully qualified.
Resolves the given Variable against the table columns in this from set.
If the variable does not resolve to anything 'null' is returned. If the
variable is ambiguous, a StatementException is thrown.
Note that the given variable does not have to be fully qualified but the
returned expressions are fully qualified.
setCaseInsensitive
public void setCaseInsensitive(boolean status)(Code)