A PL/SQL program unit associated with a particular database table is called a database trigger. It is used for : Audit data modifications. Log events transparently. Enforce complex business rules. Maintain replica tables Derive column values Implement Complex security authorizations Any of the constant, variable or parameter has a data type depending on which the storage constraints, format and range of values and operations are determined.