Resolving “Commit business rules” on the Oracle database

In recent years, software development has begun focusing on three-tier applications, mainly by separating the business rules layer from the presentation and data layer…


There are two approaches concerning the physical implementation of the business rules layer: on the application server or on the database server.
The first approach is probably better if the application needs to access different databases. If the application accesses only one database, however, (like Oracle), then it would probably be better to implement business rules on the database.
But there are some business rules that before Oracle version 8.0 are not entirely supported by the database. Probably the simplest example of that type of rule is: “Instance of Master must have at least one depending instance of Detail.” Those rules could be called “COMMIT rules”, because they can be evaluated only before committing the transaction, and not at the execution of some DML command.