rivedi la logica dell'INSERT. Un INSERT non puo' avere condizioni WHERE, e' un APPEND, cioe' attacca da qualche parte un qualcosa.
Quindi se il tuo scopo e' di inserire se non presente e se presente aggiornare il record dovresti provare con la sintassi:
http://dev.mysql.com/doc/refman/5.0/en/insert.htmlINSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE]
[INTO] tbl_name [(col_name,...)]
VALUES ({expr | DEFAULT},...),(...),...
[ ON DUPLICATE KEY UPDATE col_name=expr, ... ]