Приведенный ниже код просто вернет все years_worked
обновленные значения, которые не попадают под ваши ограничения, обратно к тому, что было до обновления.Это для SQL Server , я не могу говорить о других СУБД.
create trigger RestrictYearsWorked
on person
after update
as
update person
set years_worked = d.years_worked
from person p
inner join deleted d
on p.yourIdCol = d.yourIdCol
where p.years_worked < d.years_worked
go