Dico strano xkè non riesco a capire dove sta il problema, quindi vengo subito al punto.
La tabella:
id int(11)
data varchar(10)
ora varchar(5)
motivo varchar(30)
inserimento timestamp(14)
visto char(1)
La chiave è inserimento, generato automaticamente quando vbiene inserito un record.
L'update consiste nell'aggiornare il campo visto da 0 a 1.
Se c'è da aggiornare solo una riga tutto fila liscio, se sono 2 o + ottengo l'aggiornamento di una riga e poi l'errore: impossibile aggiornare valore duplicato della chiave.
La chiave è unica l'update è:
update nobadge set visto='1' where inserimento<$limite and visto ='0';
$limite viene generato nel momento in cui si visualizza la pagina con l'elenco della tabella.