com.akiban.sql.parser
Class DMLModStatementNode

java.lang.Object
  extended by com.akiban.sql.parser.QueryTreeNode
      extended by com.akiban.sql.parser.StatementNode
          extended by com.akiban.sql.parser.DMLStatementNode
              extended by com.akiban.sql.parser.DMLModStatementNode
All Implemented Interfaces:
Visitable
Direct Known Subclasses:
DeleteNode, InsertNode, UpdateNode

public abstract class DMLModStatementNode
extends DMLStatementNode

A DMLStatement for a table modification: to wit, INSERT UPDATE or DELETE.


Field Summary
protected  ResultColumnList returningColumnList
           
protected  TableName targetTableName
           
protected  FromVTI targetVTI
           
 
Fields inherited from class com.akiban.sql.parser.QueryTreeNode
AUTOINCREMENT_CREATE_MODIFY, AUTOINCREMENT_INC_INDEX, AUTOINCREMENT_IS_AUTOINCREMENT_INDEX, AUTOINCREMENT_START_INDEX
 
Constructor Summary
DMLModStatementNode()
           
 
Method Summary
 void copyFrom(QueryTreeNode node)
          Fill this node with a deep copy of the given node.
 ResultColumnList getReturningList()
           
 TableName getTargetTableName()
           
 void init(Object resultSet)
          Initializer for a DMLModStatementNode -- delegate to DMLStatementNode
 void init(Object resultSet, Object statementType)
          Initializer for a DMLModStatementNode -- delegate to DMLStatementNode
 boolean isAtomic()
          INSERT/UPDATE/DELETE are always atomic.
 void printSubNodes(int depth)
          Prints the sub-nodes of this object.
 void setReturningList(ResultColumnList returningColumnList)
           
 
Methods inherited from class com.akiban.sql.parser.DMLStatementNode
getResultSetNode
 
Methods inherited from class com.akiban.sql.parser.StatementNode
statementToString, toString
 
Methods inherited from class com.akiban.sql.parser.QueryTreeNode
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, init, isInstanceOf, makeTableName, makeTableName, nodeHeader, printLabel, setBeginOffset, setDebugOutput, setEndOffset, setNodeType, setParserContext, setUserData, stackPrint, treePrint, treePrint, treePrint
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

targetVTI

protected FromVTI targetVTI

targetTableName

protected TableName targetTableName

returningColumnList

protected ResultColumnList returningColumnList
Constructor Detail

DMLModStatementNode

public DMLModStatementNode()
Method Detail

init

public void init(Object resultSet)
Initializer for a DMLModStatementNode -- delegate to DMLStatementNode

Overrides:
init in class DMLStatementNode
Parameters:
resultSet - A ResultSetNode for the result set of the DML statement

init

public void init(Object resultSet,
                 Object statementType)
Initializer for a DMLModStatementNode -- delegate to DMLStatementNode

Overrides:
init in class QueryTreeNode
Parameters:
resultSet - A ResultSetNode for the result set of the DML statement
statementType - used by nodes that allocate a DMLMod directly (rather than inheriting it).

copyFrom

public void copyFrom(QueryTreeNode node)
              throws StandardException
Fill this node with a deep copy of the given node.

Overrides:
copyFrom in class DMLStatementNode
Throws:
StandardException

isAtomic

public boolean isAtomic()
INSERT/UPDATE/DELETE are always atomic.

Returns:
true

getTargetTableName

public TableName getTargetTableName()

getReturningList

public ResultColumnList getReturningList()

setReturningList

public void setReturningList(ResultColumnList returningColumnList)

printSubNodes

public void printSubNodes(int depth)
Prints the sub-nodes of this object. See QueryTreeNode.java for how tree printing is supposed to work.

Overrides:
printSubNodes in class DMLStatementNode
Parameters:
depth - The depth of this node in the tree


Copyright © 2013 Akiban Technologies, Inc. All rights reserved.