Package org.apache.derby.iapi.db
Interface TriggerExecutionContext
-
- All Known Implementing Classes:
InternalTriggerExecutionContext
public interface TriggerExecutionContext
A trigger execution context holds information that is available from the context of a trigger invocation.
-
-
Field Summary
Fields Modifier and Type Field Description static int
DELETE_EVENT
Return value from getEventType() for a delete trigger.static int
INSERT_EVENT
Return value from getEventType() for an insert trigger.static int
UPDATE_EVENT
Return value from getEventType() for an update trigger.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.lang.Long
getAutoincrementValue(java.lang.String identity)
Get the last auto-increment value for the specified column.java.lang.String
getEventStatementText()
Get the text of the statement that caused the trigger to fire.int
getEventType()
Get the type for the event that caused the trigger to fire.java.sql.ResultSet
getNewRow()
Like getNewRowSet(), but returns a result set positioned on the first row of the after (new) result set.java.sql.ResultSet
getNewRowSet()
Returns a result set of the new (after) images of the changed rows.java.sql.ResultSet
getOldRow()
Like getOldRowSet(), but returns a result set positioned on the first row of the before (old) result set.java.sql.ResultSet
getOldRowSet()
Returns a result set of the old (before) images of the changed rows.UUID
getTargetTableId()
Get the target table UUID upon which the trigger event is declared.java.lang.String
getTargetTableName()
Get the target table name upon which the trigger event is declared.
-
-
-
Field Detail
-
UPDATE_EVENT
static final int UPDATE_EVENT
Return value from getEventType() for an update trigger.- See Also:
- Constant Field Values
-
DELETE_EVENT
static final int DELETE_EVENT
Return value from getEventType() for a delete trigger.- See Also:
- Constant Field Values
-
INSERT_EVENT
static final int INSERT_EVENT
Return value from getEventType() for an insert trigger.- See Also:
- Constant Field Values
-
-
Method Detail
-
getTargetTableName
java.lang.String getTargetTableName()
Get the target table name upon which the trigger event is declared.- Returns:
- the target table
-
getTargetTableId
UUID getTargetTableId()
Get the target table UUID upon which the trigger event is declared.- Returns:
- the uuid of the target table
-
getEventType
int getEventType()
Get the type for the event that caused the trigger to fire.- Returns:
- the event type (e.g. UPDATE_EVENT)
-
getEventStatementText
java.lang.String getEventStatementText()
Get the text of the statement that caused the trigger to fire.- Returns:
- the statement text.
-
getOldRowSet
java.sql.ResultSet getOldRowSet() throws java.sql.SQLException
Returns a result set of the old (before) images of the changed rows. For a row trigger, this result set will have a single row. For a statement trigger, this result set has every row that has changed or will change. If a statement trigger does not affect a row, then the result set will be empty (i.e. ResultSet.next() will return false).Will return null if the call is inapplicable for the trigger that is currently executing. For example, will return null if called during a the firing of an INSERT trigger.
- Returns:
- the ResultSet containing before images of the rows changed by the triggering event. May return null.
- Throws:
java.sql.SQLException
- if called after the triggering event has completed
-
getNewRowSet
java.sql.ResultSet getNewRowSet() throws java.sql.SQLException
Returns a result set of the new (after) images of the changed rows. For a row trigger, this result set will have a single row. For a statement trigger, this result set has every row that has changed or will change. If a statement trigger does not affect a row, then the result set will be empty (i.e. ResultSet.next() will return false).Will return null if the call is inapplicable for the trigger that is currently executing. For example, will return null if called during the firing of a DELETE trigger.
- Returns:
- the ResultSet containing after images of the rows changed by the triggering event. May return null.
- Throws:
java.sql.SQLException
- if called after the triggering event has completed
-
getOldRow
java.sql.ResultSet getOldRow() throws java.sql.SQLException
Like getOldRowSet(), but returns a result set positioned on the first row of the before (old) result set. Used as a convenience to get a column for a row trigger. Equivalent to getOldRowSet() followed by next().Will return null if the call is inapplicable for the trigger that is currently executing. For example, will return null if called during a the firing of an INSERT trigger.
- Returns:
- the ResultSet positioned on the old row image. May return null.
- Throws:
java.sql.SQLException
- if called after the triggering event has completed
-
getNewRow
java.sql.ResultSet getNewRow() throws java.sql.SQLException
Like getNewRowSet(), but returns a result set positioned on the first row of the after (new) result set. Used as a convenience to get a column for a row trigger. Equivalent to getNewRowSet() followed by next().Will return null if the call is inapplicable for the trigger that is currently executing. For example, will return null if called during the firing of a DELETE trigger.
- Returns:
- the ResultSet positioned on the new row image. May return null.
- Throws:
java.sql.SQLException
- if called after the triggering event has completed
-
getAutoincrementValue
java.lang.Long getAutoincrementValue(java.lang.String identity)
Get the last auto-increment value for the specified column.- Parameters:
identity
- the fully qualified name of the identity column- Returns:
- the last auto-increment value, or
null
if not found
-
-