Sei sicuro che esegue gli update dentro il while?

fai in modo di far visualizzare le query di update e vedi se sono corrette