Package org.h2.tools
Class TriggerAdapter
java.lang.Object
org.h2.tools.TriggerAdapter
- All Implemented Interfaces:
Trigger
An adapter for the trigger interface that allows to use the ResultSet
interface instead of a row array.
-
Field Summary
Modifier and TypeFieldDescriptionprotected boolean
Whether the fire method is called before or after the operation is performed.protected String
The schema name.protected String
The name of the table.protected String
The name of the trigger.protected int
The trigger type: INSERT, UPDATE, DELETE, SELECT, or a combination (a bit field). -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionfinal void
fire
(Connection conn, Object[] oldRow, Object[] newRow) This method is called for each triggered action.abstract void
fire
(Connection conn, ResultSet oldRow, ResultSet newRow) This method is called for each triggered action by the default fire(Connection conn, Object[] oldRow, Object[] newRow) method.void
init
(Connection conn, String schemaName, String triggerName, String tableName, boolean before, int type) This method is called by the database engine once when initializing the trigger.
-
Field Details
-
schemaName
The schema name. -
triggerName
The name of the trigger. -
tableName
The name of the table. -
before
protected boolean beforeWhether the fire method is called before or after the operation is performed. -
type
protected int typeThe trigger type: INSERT, UPDATE, DELETE, SELECT, or a combination (a bit field).
-
-
Constructor Details
-
TriggerAdapter
public TriggerAdapter()
-
-
Method Details
-
init
public void init(Connection conn, String schemaName, String triggerName, String tableName, boolean before, int type) throws SQLException 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.- Specified by:
init
in interfaceTrigger
- Parameters:
conn
- a connection to the databaseschemaName
- the name of the schematriggerName
- the name of the trigger used in the CREATE TRIGGER statementtableName
- the name of the tablebefore
- whether the fire method is called before or after the operation is performedtype
- the operation type: INSERT, UPDATE, DELETE, SELECT, or a combination (this parameter is a bit field)- Throws:
SQLException
- on SQL exception
-
fire
Description copied from interface:Trigger
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.
- Specified by:
fire
in interfaceTrigger
- Parameters:
conn
- a connection to the databaseoldRow
- the old row, or null if no old row is available (for INSERT)newRow
- the new row, or null if no new row is available (for DELETE)- Throws:
SQLException
- if the operation must be undone
-
fire
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
- a connection to the databaseoldRow
- the old row, or null if no old row is available (for INSERT)newRow
- the new row, or null if no new row is available (for DELETE)- Throws:
SQLException
- if the operation must be undone
-