Class SetSchemaNode
java.lang.Object
org.apache.derby.impl.sql.compile.QueryTreeNode
org.apache.derby.impl.sql.compile.StatementNode
org.apache.derby.impl.sql.compile.MiscellaneousStatementNode
org.apache.derby.impl.sql.compile.SetSchemaNode
- All Implemented Interfaces:
Visitable
A SetSchemaNode is the root of a QueryTree that
represents a SET SCHEMA statement. It isn't
replicated, but it generates a ConstantAction
because it is basically easier than generating
the code from scratch.
-
Field Summary
FieldsFields inherited from class org.apache.derby.impl.sql.compile.StatementNode
EMPTY_TD_LIST, NEED_CURSOR_ACTIVATION, NEED_DDL_ACTIVATION, NEED_NOTHING_ACTIVATION, NEED_PARAM_ACTIVATION, NEED_ROW_ACTIVATION
Fields inherited from class org.apache.derby.impl.sql.compile.QueryTreeNode
AUTOINCREMENT_CREATE_MODIFY, AUTOINCREMENT_CYCLE, AUTOINCREMENT_INC_INDEX, AUTOINCREMENT_IS_AUTOINCREMENT_INDEX, AUTOINCREMENT_START_INDEX
-
Constructor Summary
ConstructorsConstructorDescriptionSetSchemaNode
(String schemaName, int type, ContextManager cm) Constructor for a SetSchemaNode -
Method Summary
Modifier and TypeMethodDescription(package private) int
Returns the type of activation this class generates.(package private) void
generate
(ActivationClassBuilder acb, MethodBuilder mb) Generate code, need to push parameters(package private) void
Generate the code to create the ParameterValueSet, if necessary, when constructing the activation.Create the Constant information that will drive the guts of Execution.(package private) String
toString()
Convert this object to a String.Methods inherited from class org.apache.derby.impl.sql.compile.MiscellaneousStatementNode
needsSavepoint
Methods inherited from class org.apache.derby.impl.sql.compile.StatementNode
bindStatement, executeSchemaName, executeStatementName, generate, getCursorInfo, getSPSName, isAtomic, lockTableForCompilation, makeResultDescription, optimizeStatement, updateIndexStatisticsFor
Methods inherited from class org.apache.derby.impl.sql.compile.QueryTreeNode
accept, acceptChildren, 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, referencesSessionSchema, resolveTableToSynonym, setBeginOffset, setEndOffset, setRefActionInfo, stackPrint, taggedWith, treePrint, treePrint, verifyClassExist
-
Field Details
-
name
-
type
private int type
-
-
Constructor Details
-
SetSchemaNode
SetSchemaNode(String schemaName, int type, ContextManager cm) Constructor for a SetSchemaNode- Parameters:
schemaName
- The name of the new schematype
- Type of schema name could be USER or dynamic parametercm
- The context manager
-
-
Method Details
-
toString
Convert this object to a String. See comments in QueryTreeNode.java for how this should be done for tree printing.- Overrides:
toString
in classStatementNode
- Returns:
- This object as a String
-
statementToString
String statementToString()- Specified by:
statementToString
in classStatementNode
-
makeConstantAction
Create the Constant information that will drive the guts of Execution.- Overrides:
makeConstantAction
in classQueryTreeNode
- Throws:
StandardException
- Thrown on failure
-
generate
Generate code, need to push parameters- Overrides:
generate
in classMiscellaneousStatementNode
- Parameters:
acb
- The ActivationClassBuilder for the class being builtmb
- the method for the execute() method to be built- Throws:
StandardException
- Thrown on error
-
generateParameterValueSet
Generate the code to create the ParameterValueSet, if necessary, when constructing the activation. Also generate the code to call a method that will throw an exception if we try to execute without all the parameters being set.- Parameters:
acb
- The ActivationClassBuilder for the class we're building- Throws:
StandardException
-
activationKind
int activationKind()Returns the type of activation this class generates.- Overrides:
activationKind
in classMiscellaneousStatementNode
- Returns:
- NEED_PARAM_ACTIVATION or NEED_NOTHING_ACTIVATION depending on params
-