Database triggers should be designed to guarantee that when a specific operation is performed, related actions are executed, and for centralized, global operations that must fire regardless of the user or application. Replicating built-in constraints or duplicating other triggers are bad design practices.