This is common sense How to enforce this in a recent Oracle version? create assertion x25 check (not exists(select * from emp e where sal*25<any(select sal from emp))); update emp set sal=100000 where job=’PRESIDENT’; ORA-08601: SQL assertion (SCOTT.X25) violated.