The previous replication methods were implemented at the database layer, however, there are use case where the application decides whether to replicate the data, replicate a portion of it only or to replicate the data to another system. For such scenarios, triggers and procedures — a commonly found feature in relational databases — can be used. Application specific code can be registered with triggers and the code is executed automatically whenever a change in the database occurs. Generally, the action involving copying the change to a separate table which an external process can read and then apply application specific logic.
Trigger based replication has more overhead compared to other replication mechanisms and may also be limited in its capabilities to only what triggers can do. Nevertheless, it is still an option that may be suitable for certain use cases.