public class CreateTriggerNode extends DDLStatementNode
Modifier and Type | Field and Description |
---|---|
private UUID |
actionCompSchemaId |
private StatementNode |
actionNode |
private int |
actionOffset |
private java.lang.String |
actionText |
private SchemaDescriptor |
compSchemaDescriptor |
private boolean |
isBefore |
private boolean |
isEnabled |
private boolean |
isRow |
private boolean |
newTableInReferencingClause |
private java.lang.String |
newTableName |
private static java.util.Comparator |
OFFSET_COMPARATOR
Comparator that can be used for sorting lists of FromBaseTables
on the position they have in the SQL query string.
|
private boolean |
oldTableInReferencingClause |
private java.lang.String |
oldTableName |
private java.lang.String |
originalActionText |
private java.util.List |
refClause |
private int[] |
referencedColInts |
private int[] |
referencedColsInTriggerAction |
private TableName |
tableName |
private ResultColumnList |
triggerCols |
private int |
triggerEventMask |
private TableName |
triggerName |
private SchemaDescriptor |
triggerSchemaDescriptor |
private TableDescriptor |
triggerTableDescriptor |
private ValueNode |
whenClause |
private int |
whenOffset |
private java.lang.String |
whenText |
ADD_TYPE, DROP_STATISTICS, DROP_TYPE, implicitCreateSchema, LOCKING_TYPE, MODIFY_TYPE, UNKNOWN_TYPE, UPDATE_STATISTICS
EMPTY_TD_LIST, NEED_CURSOR_ACTIVATION, NEED_DDL_ACTIVATION, NEED_NOTHING_ACTIVATION, NEED_PARAM_ACTIVATION, NEED_ROW_ACTIVATION
AUTOINCREMENT_CREATE_MODIFY, AUTOINCREMENT_INC_INDEX, AUTOINCREMENT_IS_AUTOINCREMENT_INDEX, AUTOINCREMENT_START_INDEX
Constructor and Description |
---|
CreateTriggerNode() |
Modifier and Type | Method and Description |
---|---|
private boolean |
bindReferencesClause(DataDictionary dd) |
void |
bindStatement()
Bind this CreateTriggerNode.
|
private void |
checkInvalidTriggerReference(java.lang.String tableName) |
private boolean |
equals(java.lang.String left,
java.lang.String right) |
private void |
forbidActionsOnGenCols() |
void |
init(java.lang.Object triggerName,
java.lang.Object tableName,
java.lang.Object triggerEventMask,
java.lang.Object triggerCols,
java.lang.Object isBefore,
java.lang.Object isRow,
java.lang.Object isEnabled,
java.lang.Object refClause,
java.lang.Object whenClause,
java.lang.Object whenText,
java.lang.Object whenOffset,
java.lang.Object actionNode,
java.lang.Object actionText,
java.lang.Object actionOffset)
Initializer for a CreateTriggerNode
|
private int[] |
justTheRequiredColumns(int[] columnsArrary) |
ConstantAction |
makeConstantAction()
Create the Constant information that will drive the guts of Execution.
|
void |
printSubNodes(int depth)
Prints the sub-nodes of this object.
|
boolean |
referencesSessionSchema()
Return true if the node references SESSION schema tables (temporary or permanent)
|
java.lang.String |
statementToString() |
java.lang.String |
toString()
Convert this object to a String.
|
private void |
validateReferencesClause(DataDictionary dd) |
activationKind, bindName, generate, getFullName, getObjectName, getRelativeName, getSchemaDescriptor, getSchemaDescriptor, getTableDescriptor, getTableDescriptor, getTableDescriptor, getTableDescriptor, init, initAndCheck, isAtomic, makeFromList
executeSchemaName, executeStatementName, generate, getSPSName, lockTableForCompilation, makeResultDescription, needsSavepoint, optimizeStatement, updateIndexStatisticsFor
accept, acceptChildren, bindOffsetFetch, bindRowMultiSet, bindUserCatalogType, bindUserType, checkReliability, checkReliability, convertDefaultNode, createTypeDependency, debugFlush, debugPrint, disablePrivilegeCollection, formatNodeString, foundString, generateAuthorizeCheck, getBeginOffset, getClassFactory, getCompilerContext, getContextManager, getCursorInfo, getDataDictionary, getDependencyManager, getEndOffset, getExecutionFactory, getGenericConstantActionFactory, getIntProperty, getLanguageConnectionContext, getNodeFactory, getNodeType, getNullNode, getParameterTypes, getSchemaDescriptor, getSchemaDescriptor, getStatementType, getTableDescriptor, getTypeCompiler, init, init, init, init, init, init, init, init, init, init, init, init, isInstanceOf, isPrivilegeCollectionRequired, isSessionSchema, isSessionSchema, makeTableName, makeTableName, nodeHeader, orReliability, parseStatement, printLabel, resolveTableToSynonym, setBeginOffset, setContextManager, setEndOffset, setNodeType, setRefActionInfo, stackPrint, treePrint, treePrint, verifyClassExist
private TableName triggerName
private TableName tableName
private int triggerEventMask
private ResultColumnList triggerCols
private boolean isBefore
private boolean isRow
private boolean isEnabled
private java.util.List refClause
private ValueNode whenClause
private java.lang.String whenText
private int whenOffset
private StatementNode actionNode
private java.lang.String actionText
private java.lang.String originalActionText
private int actionOffset
private SchemaDescriptor triggerSchemaDescriptor
private SchemaDescriptor compSchemaDescriptor
private int[] referencedColInts
private int[] referencedColsInTriggerAction
private TableDescriptor triggerTableDescriptor
private UUID actionCompSchemaId
private java.lang.String oldTableName
private java.lang.String newTableName
private boolean oldTableInReferencingClause
private boolean newTableInReferencingClause
private static final java.util.Comparator OFFSET_COMPARATOR
public void init(java.lang.Object triggerName, java.lang.Object tableName, java.lang.Object triggerEventMask, java.lang.Object triggerCols, java.lang.Object isBefore, java.lang.Object isRow, java.lang.Object isEnabled, java.lang.Object refClause, java.lang.Object whenClause, java.lang.Object whenText, java.lang.Object whenOffset, java.lang.Object actionNode, java.lang.Object actionText, java.lang.Object actionOffset) throws StandardException
init
in interface Node
init
in class QueryTreeNode
triggerName
- name of the triggertableName
- name of the table which the trigger is declared upontriggerEventMask
- TriggerDescriptor.TRIGGER_EVENT_XXXtriggerCols
- columns trigger is to fire upon. Valid
for UPDATE case only.isBefore
- is before trigger (false for after)isRow
- true for row trigger, false for statementisEnabled
- true if enabledrefClause
- the referencing clausewhenClause
- the WHEN clause treewhenText
- the text of the WHEN clausewhenOffset
- offset of start of WHEN clauseactionNode
- the trigger action treeactionText
- the text of the trigger actionactionOffset
- offset of start of action clauseStandardException
- Thrown on errorpublic java.lang.String statementToString()
statementToString
in class StatementNode
public void printSubNodes(int depth)
printSubNodes
in class QueryTreeNode
depth
- The depth of this node in the treepublic void bindStatement() throws StandardException
bindStatement
in class StatementNode
StandardException
- Thrown on errorpublic boolean referencesSessionSchema() throws StandardException
referencesSessionSchema
in class QueryTreeNode
StandardException
- Thrown on errorprivate boolean bindReferencesClause(DataDictionary dd) throws StandardException
StandardException
private int[] justTheRequiredColumns(int[] columnsArrary)
private void forbidActionsOnGenCols() throws StandardException
StandardException
private boolean equals(java.lang.String left, java.lang.String right)
private void checkInvalidTriggerReference(java.lang.String tableName) throws StandardException
StandardException
private void validateReferencesClause(DataDictionary dd) throws StandardException
StandardException
public ConstantAction makeConstantAction() throws StandardException
makeConstantAction
in class QueryTreeNode
StandardException
- Thrown on failurepublic java.lang.String toString()
toString
in class DDLStatementNode
Apache Derby V10.10 Internals - Copyright © 2004,2014 The Apache Software Foundation. All Rights Reserved.