I vincoli di controllo sono molto limitati in Oracle. Per eseguire un controllo come quello che proponi, dovresti implementare un trigger PL/SQL .
Il mio consiglio sarebbe di evitare del tutto i trigger. Implementare una stored procedure che modifichi il database e includa i controlli. Le stored procedure sono più facili da mantenere, sebbene siano leggermente più difficili da implementare. Ma cambiare un front-end dall'accesso diretto alla tabella all'accesso alla stored procedure ripaga molte volte nel lungo periodo.