Visitable
class RenameNode extends DDLStatementNode
Modifier and Type | Field | Description |
---|---|---|
private long |
conglomerateNumber |
|
protected java.lang.String |
newObjectName |
|
protected TableName |
newTableName |
|
protected java.lang.String |
oldObjectName |
|
protected int |
renamingWhat |
|
protected TableDescriptor |
td |
|
protected boolean |
usedAlterTable |
ADD_TYPE, DROP_STATISTICS, DROP_TYPE, implicitCreateSchema, LOCKING_TYPE, MODIFY_TYPE, UNKNOWN_TYPE, UPDATE_STATISTICS
AUTOINCREMENT_CREATE_MODIFY, AUTOINCREMENT_CYCLE, AUTOINCREMENT_INC_INDEX, AUTOINCREMENT_IS_AUTOINCREMENT_INDEX, AUTOINCREMENT_START_INDEX
EMPTY_TD_LIST, NEED_CURSOR_ACTIVATION, NEED_DDL_ACTIVATION, NEED_NOTHING_ACTIVATION, NEED_PARAM_ACTIVATION, NEED_ROW_ACTIVATION
Constructor | Description |
---|---|
RenameNode(java.lang.Object tableName,
java.lang.String oldObjectName,
java.lang.String newObjectName,
boolean usedAlterTable,
int renamingWhat,
ContextManager cm) |
Constructor for a RenameNode
|
Modifier and Type | Method | Description |
---|---|---|
(package private) void |
acceptChildren(Visitor v) |
Accept a visitor on all child nodes.
|
void |
bindStatement() |
Bind this node.
|
private StandardException |
descriptorExistsException(TupleDescriptor tuple,
TupleDescriptor parent) |
|
ConstantAction |
makeConstantAction() |
Create the Constant information that will drive the guts of Execution
|
boolean |
referencesSessionSchema() |
Return true if the node references SESSION schema tables (temporary or permanent)
|
private void |
renameColumnBind(DataDictionary dd) |
|
private void |
renameTableBind(DataDictionary dd) |
|
(package private) java.lang.String |
statementToString() |
|
java.lang.String |
toString() |
Convert this object to a String.
|
activationKind, generate, getFullName, getObjectName, getRelativeName, getSchemaDescriptor, getSchemaDescriptor, getTableDescriptor, getTableDescriptor, getTableDescriptor, getTableDescriptor, initAndCheck, isAtomic, makeFromList
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
accept, addTag, addUDTUsagePriv, addUDTUsagePriv, bindOffsetFetch, bindRowMultiSet, bindUserCatalogType, bindUserType, checkReliability, checkReliability, convertDefaultNode, copyTagsFrom, createTypeDependency, debugFlush, debugPrint, disablePrivilegeCollection, formatNodeString, generateAuthorizeCheck, getBeginOffset, getClassFactory, getCompilerContext, getContext, getContextManager, getDataDictionary, getDependencyManager, getEndOffset, getExecutionFactory, getGenericConstantActionFactory, getIntProperty, getLanguageConnectionContext, getLongProperty, getNullNode, getOffsetOrderedNodes, getOptimizerFactory, getOptimizerTracer, getParameterTypes, getSchemaDescriptor, getSchemaDescriptor, getStatementType, getTableDescriptor, getTypeCompiler, getUDTDesc, isPrivilegeCollectionRequired, isSessionSchema, isSessionSchema, makeTableName, makeTableName, nodeHeader, optimizerTracingIsOn, orReliability, parseSearchCondition, parseStatement, printLabel, printSubNodes, resolveTableToSynonym, setBeginOffset, setEndOffset, setRefActionInfo, stackPrint, taggedWith, treePrint, treePrint, verifyClassExist
executeSchemaName, executeStatementName, generate, getCursorInfo, getSPSName, lockTableForCompilation, makeResultDescription, needsSavepoint, optimizeStatement, updateIndexStatisticsFor
protected TableName newTableName
protected java.lang.String oldObjectName
protected java.lang.String newObjectName
protected TableDescriptor td
private long conglomerateNumber
protected boolean usedAlterTable
protected int renamingWhat
RenameNode(java.lang.Object tableName, java.lang.String oldObjectName, java.lang.String newObjectName, boolean usedAlterTable, int renamingWhat, ContextManager cm) throws StandardException
tableName
- The name of the table. This is the table which is
being renamed in case of rename table. In case of rename
column, the column being renamed belongs to this table.
In case of rename index, this is null because index name
is unique within a schema and doesn't have to be
associated with a table name.
Coming from ALTER TABLE path, tableName will
be TableName object. Mostly a TableName object, but coming from
RENAME COLUMN path, tableName will be a String.oldObjectName
- This is either the name of column/index in case
of rename column/index. For rename table, this is null.newObjectName
- This is new name for table/column/indexusedAlterTable
- True-Used Alter Table, False-Used Rename.
For rename index, this will always be false because
there is no alter table command to rename indexrenamingWhat
- Rename a 1 - table, 2 - column, 3 - indexcm
- context managerStandardException
- Thrown on errorpublic java.lang.String toString()
toString
in class DDLStatementNode
java.lang.String statementToString()
statementToString
in class StatementNode
public void bindStatement() throws StandardException
bindStatement
in class StatementNode
StandardException
- Thrown on errorpublic boolean referencesSessionSchema() throws StandardException
referencesSessionSchema
in class QueryTreeNode
StandardException
- Thrown on errorprivate void renameTableBind(DataDictionary dd) throws StandardException
StandardException
private void renameColumnBind(DataDictionary dd) throws StandardException
StandardException
public ConstantAction makeConstantAction() throws StandardException
makeConstantAction
in class QueryTreeNode
StandardException
- Thrown on failureprivate StandardException descriptorExistsException(TupleDescriptor tuple, TupleDescriptor parent)
void acceptChildren(Visitor v) throws StandardException
QueryTreeNode
accept(v)
on all visitable fields, as well as
super.acceptChildren(v)
to make sure all visitable fields
defined by the super-class are accepted too.acceptChildren
in class DDLStatementNode
v
- the visitorStandardException
- on errors raised by the visitorApache Derby V10.14 Internals - Copyright © 2004,2018 The Apache Software Foundation. All Rights Reserved.