Package org.hsqldb
Interface Trigger
-
- All Known Implementing Classes:
TriggerSample
public interface Trigger
The interface an HSQLDB TRIGGER must implement. The user-supplied class that implements this must have a default constructor.- Since:
- 1.7.0
- Author:
- Peter Hudson (peterhudson@users dot sourceforge.net)
-
-
Field Summary
Fields Modifier and Type Field Description static int
DELETE_AFTER
static int
DELETE_AFTER_ROW
static int
DELETE_BEFORE_ROW
static int
INSERT_AFTER
static int
INSERT_AFTER_ROW
static int
INSERT_BEFORE_ROW
static int
UPDATE_AFTER
static int
UPDATE_AFTER_ROW
static int
UPDATE_BEFORE_ROW
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
fire(int type, java.lang.String trigName, java.lang.String tabName, java.lang.Object[] oldRow, java.lang.Object[] newRow)
The method invoked upon each triggered action.
-
-
-
Field Detail
-
INSERT_AFTER
static final int INSERT_AFTER
- See Also:
- Constant Field Values
-
DELETE_AFTER
static final int DELETE_AFTER
- See Also:
- Constant Field Values
-
UPDATE_AFTER
static final int UPDATE_AFTER
- See Also:
- Constant Field Values
-
INSERT_AFTER_ROW
static final int INSERT_AFTER_ROW
- See Also:
- Constant Field Values
-
DELETE_AFTER_ROW
static final int DELETE_AFTER_ROW
- See Also:
- Constant Field Values
-
UPDATE_AFTER_ROW
static final int UPDATE_AFTER_ROW
- See Also:
- Constant Field Values
-
INSERT_BEFORE_ROW
static final int INSERT_BEFORE_ROW
- See Also:
- Constant Field Values
-
DELETE_BEFORE_ROW
static final int DELETE_BEFORE_ROW
- See Also:
- Constant Field Values
-
UPDATE_BEFORE_ROW
static final int UPDATE_BEFORE_ROW
- See Also:
- Constant Field Values
-
-
Method Detail
-
fire
void fire(int type, java.lang.String trigName, java.lang.String tabName, java.lang.Object[] oldRow, java.lang.Object[] newRow)
The method invoked upon each triggered action.type contains the integer index id for trigger type, e.g. TriggerDef.INSERT_AFTER
For all triggers defined as default FOR EACH STATEMENT both oldRow and newRow are null.
For triggers defined as FOR EACH ROW, the following will apply:
When UPDATE triggers are fired, oldRow contains the existing values of the table row and newRow contains the new values.
For INSERT triggers, oldRow is null and newRow contains the table row to be inserted. For DELETE triggers, newRow is null and oldRow contains the table row to be deleted.
For error conditions, users can construct an HsqlException using one of the static methods of org.hsqldb.error.Error with a predefined SQL State from org.hsqldb.error.ErrorCode.
- Parameters:
type
- the type as one of the int values defined in the interfacetrigName
- the name of the triggertabName
- the name of the table upon which the triggered action is occuringoldRow
- the old rownewRow
- the new row- Throws:
org.hsqldb.HsqlException
-
-