org.h2.command

## Class CommandContainer

- java.lang.Object
- - org.h2.command.Command
  - - org.h2.command.CommandContainer

All Implemented Interfaces:
  java.lang.AutoCloseable, CommandInterface

    public class CommandContainer
    extends Command

Represents a single SQL statements. It wraps a prepared statement.

### Field Summary

### Fields inherited from class org.h2.command.Command

`session, startTimeNanos`

### Fields inherited from interface org.h2.command.CommandInterface

`ALTER_DOMAIN_ADD_CONSTRAINT, ALTER_DOMAIN_DEFAULT, ALTER_DOMAIN_DROP_CONSTRAINT, ALTER_DOMAIN_ON_UPDATE, ALTER_DOMAIN_RENAME, ALTER_DOMAIN_RENAME_CONSTRAINT, ALTER_INDEX_RENAME, ALTER_SCHEMA_RENAME, ALTER_SEQUENCE, ALTER_TABLE_ADD_COLUMN, ALTER_TABLE_ADD_CONSTRAINT_CHECK, ALTER_TABLE_ADD_CONSTRAINT_PRIMARY_KEY, ALTER_TABLE_ADD_CONSTRAINT_REFERENTIAL, ALTER_TABLE_ADD_CONSTRAINT_UNIQUE, ALTER_TABLE_ALTER_COLUMN_CHANGE_TYPE, ALTER_TABLE_ALTER_COLUMN_DEFAULT, ALTER_TABLE_ALTER_COLUMN_DEFAULT_ON_NULL, ALTER_TABLE_ALTER_COLUMN_DROP_EXPRESSION, ALTER_TABLE_ALTER_COLUMN_DROP_IDENTITY, ALTER_TABLE_ALTER_COLUMN_DROP_NOT_NULL, ALTER_TABLE_ALTER_COLUMN_NOT_NULL, ALTER_TABLE_ALTER_COLUMN_ON_UPDATE, ALTER_TABLE_ALTER_COLUMN_RENAME, ALTER_TABLE_ALTER_COLUMN_SELECTIVITY, ALTER_TABLE_ALTER_COLUMN_VISIBILITY, ALTER_TABLE_DROP_COLUMN, ALTER_TABLE_DROP_CONSTRAINT, ALTER_TABLE_RENAME, ALTER_TABLE_RENAME_CONSTRAINT, ALTER_TABLE_SET_REFERENTIAL_INTEGRITY, ALTER_USER_ADMIN, ALTER_USER_RENAME, ALTER_USER_SET_PASSWORD, ALTER_VIEW, ANALYZE, BACKUP, BEGIN, CALL, CHECKPOINT, CHECKPOINT_SYNC, COMMENT, COMMIT, COMMIT_TRANSACTION, CREATE_AGGREGATE, CREATE_ALIAS, CREATE_CONSTANT, CREATE_DOMAIN, CREATE_INDEX, CREATE_LINKED_TABLE, CREATE_ROLE, CREATE_SCHEMA, CREATE_SEQUENCE, CREATE_SYNONYM, CREATE_TABLE, CREATE_TRIGGER, CREATE_USER, CREATE_VIEW, DEALLOCATE, DELETE, DROP_AGGREGATE, DROP_ALIAS, DROP_ALL_OBJECTS, DROP_CONSTANT, DROP_DOMAIN, DROP_INDEX, DROP_ROLE, DROP_SCHEMA, DROP_SEQUENCE, DROP_SYNONYM, DROP_TABLE, DROP_TRIGGER, DROP_USER, DROP_VIEW, EXECUTE, EXECUTE_IMMEDIATELY, EXPLAIN, EXPLAIN_ANALYZE, GRANT, HELP, INSERT, MERGE, NO_OPERATION, PREPARE, PREPARE_COMMIT, REPLACE, REVOKE, ROLLBACK, ROLLBACK_TO_SAVEPOINT, ROLLBACK_TRANSACTION, RUNSCRIPT, SAVEPOINT, SCRIPT, SELECT, SET, SET_AUTOCOMMIT_FALSE, SET_AUTOCOMMIT_TRUE, SHUTDOWN, SHUTDOWN_COMPACT, SHUTDOWN_DEFRAG, SHUTDOWN_IMMEDIATELY, TRUNCATE_TABLE, UNKNOWN, UPDATE`

### Constructor Summary

Constructors
Constructor and Description
`CommandContainer(SessionLocal session, java.lang.String sql, Prepared prepared)`

### Method Summary

All Methods Instance Methods Concrete Methods
`boolean` `canReuse()` Whether the command is already closed (in which case it can be re-used).
`int` `getCommandType()` Get command type.
`java.util.Set<DbObject>` `getDependencies()`
`java.util.ArrayList<? extends ParameterInterface>` `getParameters()` Get the list of parameters.
`boolean` `isCacheable()`
`protected boolean` `isCurrentCommandADefineCommand()` Is the command we just tried to execute a DefineCommand (i.e.
`boolean` `isQuery()` Check if this command is a query.
`boolean` `isReadOnly()` Check if this command is read only.
`boolean` `isTransactional()` Check if this command is transactional.
`ResultInterface` `query(long maxrows)` Execute a query statement, if this is possible.
`ResultInterface` `queryMeta()` Get an empty result set containing the meta data.
`void` `stop()` Stop the command execution, release all locks and resources
`ResultWithGeneratedKeys` `update(java.lang.Object generatedKeysRequest)` Execute an updating statement (for example insert, delete, or update), if this is possible.

### Methods inherited from class org.h2.command.Command

`cancel, checkCanceled, close, executeQuery, executeUpdate, getMetaData, reuse, setCanReuse, toString`

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

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

### Constructor Detail

#### CommandContainer

    public CommandContainer(SessionLocal session,
                            java.lang.String sql,
                            Prepared prepared)

### Method Detail

#### getParameters

    public java.util.ArrayList<? extends ParameterInterface> getParameters()

Description copied from class: `Command`
Get the list of parameters.

Specified by:
  `getParameters` in interface `CommandInterface`
Specified by:
  `getParameters` in class `Command`
Returns:
  the list of parameters

#### isTransactional

    public boolean isTransactional()

Description copied from class: `Command`
Check if this command is transactional. If it is not, then it forces the current transaction to commit.

Specified by:
  `isTransactional` in class `Command`
Returns:
  true if it is

#### isQuery

    public boolean isQuery()

Description copied from class: `Command`
Check if this command is a query.

Specified by:
  `isQuery` in interface `CommandInterface`
Specified by:
  `isQuery` in class `Command`
Returns:
  true if it is

#### update

    public ResultWithGeneratedKeys update(java.lang.Object generatedKeysRequest)

Description copied from class: `Command`
Execute an updating statement (for example insert, delete, or update), if this is possible.

Specified by:
  `update` in class `Command`
Parameters:
  `generatedKeysRequest` - `false` if generated keys are not needed, `true` if generated keys should be configured automatically, `int[]` to specify column indices to return generated keys from, or `String[]` to specify column names to return generated keys from
Returns:
  the update count and generated keys, if any

#### query

    public ResultInterface query(long maxrows)

Description copied from class: `Command`
Execute a query statement, if this is possible.

Specified by:
  `query` in class `Command`
Parameters:
  `maxrows` - the maximum number of rows returned
Returns:
  the local result set

#### stop

    public void stop()

Description copied from interface: `CommandInterface`
Stop the command execution, release all locks and resources

Specified by:
  `stop` in interface `CommandInterface`
Overrides:
  `stop` in class `Command`

#### canReuse

    public boolean canReuse()

Description copied from class: `Command`
Whether the command is already closed (in which case it can be re-used).

Overrides:
  `canReuse` in class `Command`
Returns:
  true if it can be re-used

#### isReadOnly

    public boolean isReadOnly()

Description copied from class: `Command`
Check if this command is read only.

Specified by:
  `isReadOnly` in class `Command`
Returns:
  true if it is

#### queryMeta

    public ResultInterface queryMeta()

Description copied from class: `Command`
Get an empty result set containing the meta data.

Specified by:
  `queryMeta` in class `Command`
Returns:
  an empty result set

#### isCacheable

    public boolean isCacheable()

Overrides:
  `isCacheable` in class `Command`

#### getCommandType

    public int getCommandType()

Description copied from interface: `CommandInterface`
Get command type.

Returns:
  one of the constants above

#### getDependencies

    public java.util.Set<DbObject> getDependencies()

Specified by:
  `getDependencies` in class `Command`

#### isCurrentCommandADefineCommand

    protected boolean isCurrentCommandADefineCommand()

Description copied from class: `Command`
Is the command we just tried to execute a DefineCommand (i.e. DDL).

Specified by:
  `isCurrentCommandADefineCommand` in class `Command`
Returns:
  true if yes