Top Description Fields Constructors Methods
org.h2.tools

public abstract Class TriggerAdapter

extends Object
implements Trigger
Class Inheritance
All Implemented Interfaces
org.h2.api.Trigger
Imports
java.sql.Connection, .ResultSet, .SQLException, org.h2.api.Trigger, org.h2.message.DbException

An adapter for the trigger interface that allows to use the ResultSet interface instead of a row array.

Field Summary

Modifier and TypeField and Description
protected boolean
before

Whether the fire method is called before or after the operation is performed.

protected String
schemaName

The schema name.

protected String
tableName

The name of the table.

protected String
triggerName

The name of the trigger.

protected int
type

The trigger type: INSERT, UPDATE, DELETE, SELECT, or a combination (a bit field).

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public final void
fire(Connection
a connection to the database
conn
,
Object[]
the old row, or null if no old row is available (for INSERT)
oldRow
,
Object[]
the new row, or null if no new row is available (for DELETE)
newRow
)

Implements org.h2.api.Trigger.fire.

This method is called for each triggered action.

public abstract void
fire(Connection
a connection to the database
conn
,
ResultSet
the old row, or null if no old row is available (for INSERT)
oldRow
,
ResultSet
the new row, or null if no new row is available (for DELETE)
newRow
)

This method is called for each triggered action by the default fire(Connection conn, Object[] oldRow, Object[] newRow) method.

public void
init(Connection
a connection to the database
conn
,
String
the name of the schema
schemaName
,
String
the name of the trigger used in the CREATE TRIGGER statement
triggerName
,
String
the name of the table
tableName
,
boolean
whether the fire method is called before or after the operation is performed
before
,
int
the operation type: INSERT, UPDATE, DELETE, SELECT, or a combination (this parameter is a bit field)
type
)

Overrides default org.h2.api.Trigger.init.

This method is called by the database engine once when initializing the trigger.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

beforeback to summary
protected boolean before

Whether the fire method is called before or after the operation is performed.

schemaNameback to summary
protected String schemaName

The schema name.

tableNameback to summary
protected String tableName

The name of the table.

triggerNameback to summary
protected String triggerName

The name of the trigger.

typeback to summary
protected int type

The trigger type: INSERT, UPDATE, DELETE, SELECT, or a combination (a bit field).

Constructor Detail

TriggerAdapterback to summary
public TriggerAdapter()

Method Detail

fireback to summary
public final void fire(Connection conn, Object[] oldRow, Object[] newRow) throws SQLException

Implements org.h2.api.Trigger.fire.

Doc from org.h2.api.Trigger.fire.

This method is called for each triggered action. The method is called immediately when the operation occurred (before it is committed). A transaction rollback will also rollback the operations that were done within the trigger, if the operations occurred within the same database. If the trigger changes state outside the database, a rollback trigger should be used.

The row arrays contain all columns of the table, in the same order as defined in the table.

The trigger itself may change the data in the newRow array.

Parameters
conn:Connection

a connection to the database

oldRow:Object[]

the old row, or null if no old row is available (for INSERT)

newRow:Object[]

the new row, or null if no new row is available (for DELETE)

Annotations
@Override
Exceptions
SQLException:
if the operation must be undone
fireback to summary
public abstract void fire(Connection conn, ResultSet oldRow, ResultSet newRow) throws SQLException

This method is called for each triggered action by the default fire(Connection conn, Object[] oldRow, Object[] newRow) method.

For "before" triggers, the new values of the new row may be changed using the ResultSet.updateX methods.

Parameters
conn:Connection

a connection to the database

oldRow:ResultSet

the old row, or null if no old row is available (for INSERT)

newRow:ResultSet

the new row, or null if no new row is available (for DELETE)

Exceptions
SQLException:
if the operation must be undone
initback to summary
public void init(Connection conn, String schemaName, String triggerName, String tableName, boolean before, int type) throws SQLException

Overrides default org.h2.api.Trigger.init.

This method is called by the database engine once when initializing the trigger. It is called when the trigger is created, as well as when the database is opened. The default implementation initialized the result sets.

Parameters
conn:Connection

a connection to the database

schemaName:String

the name of the schema

triggerName:String

the name of the trigger used in the CREATE TRIGGER statement

tableName:String

the name of the table

before:boolean

whether the fire method is called before or after the operation is performed

type:int

the operation type: INSERT, UPDATE, DELETE, SELECT, or a combination (this parameter is a bit field)

Annotations
@Override
Exceptions
SQLException:

Doc from org.h2.api.Trigger.init.

on SQL exception