org.h2.table

## Class DataChangeDeltaTable

- java.lang.Object
- - org.h2.engine.DbObject
  - - org.h2.schema.SchemaObject
    - - org.h2.table.Table
      - - org.h2.table.VirtualTable
        - - org.h2.table.VirtualConstructedTable
          - - org.h2.table.DataChangeDeltaTable

All Implemented Interfaces:
  HasSQL

    public class DataChangeDeltaTable
    extends VirtualConstructedTable

A data change delta table.

### Nested Class Summary

Nested Classes
`static class` `DataChangeDeltaTable.ResultOption` Result option.

### Field Summary

### Fields inherited from class org.h2.table.Table

`columns, compareMode, EXCLUSIVE_LOCK, isHidden, READ_LOCK, TYPE_CACHED, TYPE_MEMORY, WRITE_LOCK`

### Fields inherited from class org.h2.engine.DbObject

`AGGREGATE, comment, COMMENT, CONSTANT, CONSTRAINT, database, DOMAIN, FUNCTION_ALIAS, INDEX, RIGHT, ROLE, SCHEMA, SEQUENCE, SETTING, SYNONYM, TABLE_OR_VIEW, trace, TRIGGER, USER`

### Fields inherited from interface org.h2.util.HasSQL

`ADD_PLAN_INFORMATION, DEFAULT_SQL_FLAGS, NO_CASTS, QUOTE_ONLY_WHEN_REQUIRED, REPLACE_LOBS_FOR_TRACE, TRACE_SQL_FLAGS`

### Constructor Summary

Constructors
Constructor and Description
`DataChangeDeltaTable(Schema schema, SessionLocal session, DataChangeStatement statement, DataChangeDeltaTable.ResultOption resultOption)`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`boolean` `canGetRowCount(SessionLocal session)` Check if the row count can be retrieved quickly.
`static void` `collectInsertedFinalRow(SessionLocal session, Table table, ResultTarget deltaChangeCollector, DataChangeDeltaTable.ResultOption deltaChangeCollectionMode, Row newRow)` Collects final row for INSERT operations.
`ResultInterface` `getResult(SessionLocal session)` Read the rows from the table.
`long` `getRowCount(SessionLocal session)` Get the row count for this table.
`long` `getRowCountApproximation(SessionLocal session)` Get the approximated row count for this table.
`java.lang.StringBuilder` `getSQL(java.lang.StringBuilder builder, int sqlFlags)` Appends the SQL statement of this object to the specified builder.
`boolean` `isDeterministic()` Check if the table is deterministic.

### Methods inherited from class org.h2.table.VirtualConstructedTable

`getMaxDataModificationId, getScanIndex`

### Methods inherited from class org.h2.table.VirtualTable

`addIndex, addRow, canDrop, canReference, checkRename, checkSupportAlter, close, getCreateSQL, getIndexes, getTableType, isInsertable, removeRow, truncate`

### Methods inherited from class org.h2.table.Table

`addConstraint, addDependencies, addDependentView, addSequence, addSynonym, addTrigger, canTruncate, checkDeadlock, checkWritingAllowed, compareValues, convertInsertRow, convertUpdateRow, createRow, doesColumnExist, dropMultipleColumnsConstraintsAndIndexes, findColumn, findPrimaryKey, fire, fireAfterRow, fireBeforeRow, fireRow, getBestPlanItem, getCheckForeignKeyConstraints, getChildren, getColumn, getColumn, getColumn, getColumns, getCompareMode, getConstraints, getDependentViews, getDiskSpaceUsed, getIdentityColumn, getIndex, getIndexForColumn, getMainIndexColumn, getNullRow, getOnCommitDrop, getOnCommitTruncate, getPrimaryKey, getRow, getRowFactory, getRowIdColumn, getScanIndex, getSQLTableType, getTemplateRow, getTemplateSimpleRow, getTriggers, getType, hasSelectTrigger, isGlobalTemporary, isHidden, isLockedExclusively, isLockedExclusivelyBy, isPersistData, isPersistIndexes, isQueryComparable, isRowLockable, isTableExpression, isView, lock, lockRow, removeChildrenAndResources, removeColumnExpressionsDependencies, removeConstraint, removeDependentView, removeIndex, removeIndexOrTransferOwnership, removeSequence, removeSynonym, removeTrigger, rename, renameColumn, setCheckForeignKeyConstraints, setColumns, setHidden, setOnCommitDrop, setOnCommitTruncate, setTableExpression, unlock, updateRow, updateRows`

### Methods inherited from class org.h2.schema.SchemaObject

`getSchema, getSQL`

### Methods inherited from class org.h2.engine.DbObject

`getComment, getCreateSQLForCopy, getCreateSQLForMeta, getDatabase, getDropSQL, getId, getModificationId, getName, invalidate, isTemporary, isValid, setComment, setModified, setObjectName, setTemporary, toString`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface org.h2.util.HasSQL

`getTraceSQL`

### Constructor Detail

#### DataChangeDeltaTable

    public DataChangeDeltaTable(Schema schema,
                                SessionLocal session,
                                DataChangeStatement statement,
                                DataChangeDeltaTable.ResultOption resultOption)

### Method Detail

#### collectInsertedFinalRow

    public static void collectInsertedFinalRow(SessionLocal session,
                                               Table table,
                                               ResultTarget deltaChangeCollector,
                                               DataChangeDeltaTable.ResultOption deltaChangeCollectionMode,
                                               Row newRow)

Collects final row for INSERT operations.

Parameters:
  `session` - the session
  `table` - the table
  `deltaChangeCollector` - target result
  `deltaChangeCollectionMode` - collection mode
  `newRow` - the inserted row

#### canGetRowCount

    public boolean canGetRowCount(SessionLocal session)

Description copied from class: `Table`
Check if the row count can be retrieved quickly.

Specified by:
  `canGetRowCount` in class `Table`
Parameters:
  `session` - the session
Returns:
  true if it can

#### getRowCount

    public long getRowCount(SessionLocal session)

Description copied from class: `Table`
Get the row count for this table.

Specified by:
  `getRowCount` in class `Table`
Parameters:
  `session` - the session
Returns:
  the row count

#### getRowCountApproximation

    public long getRowCountApproximation(SessionLocal session)

Description copied from class: `Table`
Get the approximated row count for this table.

Specified by:
  `getRowCountApproximation` in class `Table`
Parameters:
  `session` - the session
Returns:
  the approximated row count

#### getResult

    public ResultInterface getResult(SessionLocal session)

Description copied from class: `VirtualConstructedTable`
Read the rows from the table.

Specified by:
  `getResult` in class `VirtualConstructedTable`
Parameters:
  `session` - the session
Returns:
  the result

#### getSQL

    public java.lang.StringBuilder getSQL(java.lang.StringBuilder builder,
                                          int sqlFlags)

Description copied from interface: `HasSQL`
Appends the SQL statement of this object to the specified builder.

Specified by:
  `getSQL` in interface `HasSQL`
Overrides:
  `getSQL` in class `SchemaObject`
Parameters:
  `builder` - string builder
  `sqlFlags` - formatting flags
Returns:
  the specified string builder

#### isDeterministic

    public boolean isDeterministic()

Description copied from class: `Table`
Check if the table is deterministic.

Specified by:
  `isDeterministic` in class `Table`
Returns:
  true if it is