la condizione where con l'insert non ha proprio ragione di esistere, si tratta di inserire una nuova riga.....

se l'inserimento deve essere sottoposto a condizione questa deve essere valutata prima di eseguire l'inserimento

forse volevi fare un UPDATE