com.akiban.sql.parser
Class DMLStatementNode

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

public abstract class DMLStatementNode
extends StatementNode

A DMLStatementNode represents any type of DML statement: a cursor declaration, an INSERT statement, and UPDATE statement, or a DELETE statement. All DML statements have result sets, but they do different things with them. A SELECT statement sends its result set to the client, an INSERT statement inserts its result set into a table, a DELETE statement deletes from a table the rows corresponding to the rows in its result set, and an UPDATE statement updates the rows in a base table corresponding to the rows in its result set.


Field Summary
 
Fields inherited from class com.akiban.sql.parser.QueryTreeNode
AUTOINCREMENT_CREATE_MODIFY, AUTOINCREMENT_INC_INDEX, AUTOINCREMENT_IS_AUTOINCREMENT_INDEX, AUTOINCREMENT_START_INDEX
 
Constructor Summary
DMLStatementNode()
           
 
Method Summary
 void copyFrom(QueryTreeNode node)
          Fill this node with a deep copy of the given node.
 ResultSetNode getResultSetNode()
          Get the ResultSetNode from this DML Statement.
 void init(Object resultSet)
          Initializer for a DMLStatementNode
 void printSubNodes(int depth)
          Prints the sub-nodes of this object.
 
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, 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
 

Constructor Detail

DMLStatementNode

public DMLStatementNode()
Method Detail

init

public void init(Object resultSet)
Initializer for a DMLStatementNode

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

copyFrom

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

Overrides:
copyFrom in class QueryTreeNode
Throws:
StandardException

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 QueryTreeNode
Parameters:
depth - The depth of this node in the tree

getResultSetNode

public ResultSetNode getResultSetNode()
Get the ResultSetNode from this DML Statement. (Useful for view resolution after parsing the view definition.)

Returns:
ResultSetNode The ResultSetNode from this DMLStatementNode.


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