В большинстве случаев для дочернего значения лучше установить значение NULL при удалении родителя, а не использовать значение по умолчанию 1, как вы.
Если вы решите, что это поведение подходит, тогда вы можете сделать его атрибутом внешнего ключа и вообще не потребовать триггера.
Примерно так:
ALTER TABLE `user`
ADD CONSTRAINT FK_USER_TO_DEPARTMENT FOREIGN KEY (department_id)
REFERENCES `department` (department_id) ON DELETE SET NULL;