Piense en una base de datos como un gran objeto grande: después de cada llamada a ella, debe estar en un estado lógicamente consistente.
Las bases de datos se exponen a través de tablas, y mantener tablas y filas consistentes se puede hacer con activadores. Otra forma de mantenerlos constantes es no permitir el acceso directo a las tablas, y solo permitirlo a través de procedimientos almacenados y vistas.
La desventaja de los desencadenantes es que cualquier acción puede invocarlos; esto también es una fortaleza: nadie va a arruinar la integridad del sistema por incompetencia.
Como contrapunto, permitir el acceso a una base de datos solo a través de procedimientos almacenados y vistas aún permite el acceso de permisos de puerta trasera. Se confía en que los usuarios con permisos suficientes no rompan la integridad de la base de datos, todos los demás usan procedimientos almacenados.
En cuanto a la reducción de la cantidad de trabajo: las bases de datos son sorprendentemente eficientes cuando no tienen que lidiar con el mundo exterior; estarías realmente sorprendido de cuánto incluso el cambio de proceso perjudica el rendimiento. Esa es otra ventaja de los procedimientos almacenados: en lugar de una docena de llamadas a la base de datos (y todas las visitas de ida y vuelta asociadas), hay una.
Agrupar las cosas en un solo proceso almacenado está bien, pero ¿qué sucede cuando algo sale mal? Supongamos que tiene 5 pasos y el primer paso falla, ¿qué ocurre con los otros pasos? Necesita agregar un montón de lógica para atender esa situación. Una vez que empiezas a hacer eso, pierdes los beneficios del procedimiento almacenado en ese escenario.
La lógica de negocio tiene que ir a alguna parte, y hay un montón de reglas de dominio implícitas incorporados en el diseño de una base de datos - las relaciones, restricciones, etc., son un intento de codificar las normas comerciales diciendo, por ejemplo, un usuario solo puede tener una contraseña Dado que ha empezado a implementar las reglas de negocio en el servidor de la base de datos teniendo estas relaciones, etc., ¿dónde dibuja la línea? ¿Cuándo la base de datos renuncia a la responsabilidad de la integridad de los datos y comienza a confiar en las aplicaciones de las llamadas y en los usuarios de la base de datos para hacerlo bien? Los procedimientos almacenados con estas reglas integradas en ellos pueden llevar mucho poder político a las manos de los DBA. Se trata de cuántos niveles van a existir en su arquitectura de n niveles; si hay una capa de presentación, negocios y datos, ¿dónde se encuentra la separación entre el negocio y los datos? ¿Qué valor agregado agrega la capa empresarial? ¿Ejecutará la capa empresarial en el servidor de la base de datos como procedimientos almacenados?
Sí, creo que tener que eludir un disparador significa que "lo estás haciendo mal"; en este caso, un gatillo no es para ti.

Uso los disparadores en los condicionales de inserción/actualización/eliminación para aumentar/disminuir los contadores en una tabla. En este momento esta es la única vez que lo uso. Son esos desencadenadores bien? –