public class FromBaseTable extends FromTable
Positioned Update: Currently, all columns of an updatable cursor are selected to deal with a positioned update. This is because we don't know what columns will ultimately be needed from the UpdateNode above us. For example, consider:
get c as 'select cint from t for update of ctinyint' update t set ctinyint = csmallintIdeally, the cursor only selects cint. Then, something akin to an IndexRowToBaseRow is generated to take the CursorResultSet and get the appropriate columns out of the base table from the RowLocation retunrned by the cursor. Then the update node can generate the appropriate NormalizeResultSet (or whatever else it might need) to get things into the correct format for the UpdateResultSet. See CurrentOfNode for more information.
Modifier and Type | Class and Description |
---|---|
static class |
FromBaseTable.UpdateOrDelete |
correlationName, origTableName, tableProperties
AUTOINCREMENT_CREATE_MODIFY, AUTOINCREMENT_INC_INDEX, AUTOINCREMENT_IS_AUTOINCREMENT_INDEX, AUTOINCREMENT_START_INDEX
Constructor and Description |
---|
FromBaseTable() |
Modifier and Type | Method and Description |
---|---|
void |
copyFrom(QueryTreeNode node)
Fill this node with a deep copy of the given node.
|
java.lang.String |
getExposedName()
Get the exposed name for this table, which is the name that can
be used to refer to it in the rest of the query.
|
TableName |
getExposedTableName()
Get the exposed table name for this table, which is the name that can
be used to refer to it in the rest of the query.
|
IndexHintList |
getIndexHints() |
TableName |
getTableName()
Return the table name for this table.
|
void |
init(java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3)
Initializer for a table in a DELETE/ UPDATE.
|
void |
init(java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4,
java.lang.Object arg5)
Initializer for a table in a FROM list.
|
void |
printSubNodes(int depth)
Prints the sub-nodes of this object.
|
void |
setTableProperties(java.util.Properties tableProperties)
Set the table properties for this table.
|
java.lang.String |
toString()
Convert this object to a String.
|
getCorrelationName, getOrigTableName, init, setCorrelationName, setOrigTableName
getResultColumns, setInsertSource, setResultColumns
accept, convertDefaultNode, debugFlush, debugPrint, formatNodeString, getBeginOffset, getDebugOutput, getEndOffset, getNodeFactory, getNodeType, getNullNode, getParserContext, getStatementType, getUserData, init, init, init, init, init, init, init, init, init, init, init, isInstanceOf, makeTableName, makeTableName, nodeHeader, printLabel, setBeginOffset, setDebugOutput, setEndOffset, setNodeType, setParserContext, setUserData, stackPrint, treePrint, treePrint, treePrint
public void init(java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5)
init
in class QueryTreeNode
public void init(java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3)
init
in class QueryTreeNode
public void copyFrom(QueryTreeNode node) throws StandardException
copyFrom
in class FromTable
StandardException
public java.lang.String toString()
public void setTableProperties(java.util.Properties tableProperties)
tableProperties
- The new table properties.public java.lang.String getExposedName()
getExposedName
in class FromTable
public TableName getExposedTableName() throws StandardException
StandardException
- Thrown on errorpublic TableName getTableName() throws StandardException
getTableName
in class FromTable
StandardException
- Thrown on errorpublic IndexHintList getIndexHints()
public void printSubNodes(int depth)
printSubNodes
in class ResultSetNode
depth
- The depth of this node in the treeCopyright © 2013. All Rights Reserved.