Si está seguro de que la inserción en la base de datos ocurrirá solo desde el final de su aplicación, elegiría la primera opción creando un procedimiento e incluiría tanto el INSERT
declaración en una TRANSACTION
bloquear. lo que asegurará el funcionamiento atómico.
Pero, en caso de que haya posibilidades de que la inserción en la base de datos se realice a través de una consulta ad hoc o a través de una herramienta ETL de terceros, entonces no tiene otra opción que tener un disparador AFTER INSERT TRIGGER
para realizar la operación de inserción de registro (segunda opción) ya que no hay forma de llamar al otro INSERT
declaración de forma automática o explícita.