Cita: Tengo una base de datos organizada de la siguiente manera:
ID - Nombre - Puntos
Eso no es una BBDD, es una tabla...
Cita: Para hacer eso primero obtengo todos los registros y verfico cuantos puntos tiene cada ID, por lo que me queda una lista:
Si lo que necesitas es actualizar los puntos que figuran en la tabla para cada ID, entonces lo que corresponde hacer es un UPDATE y no un INSERT.
INSERT correspondería si usases una tabla relacionada con la de los usuarios o lo que sea que represente esa primera, donde guardes una entrada por cada conjunto d epuntos sumados en una sesión de lo que sea que se trate.
En realidad, si los puntos corresponden a partidos, exámenes o sesiones, lo correcto es que cada puntaje adicionado se administre en una tabla separada, la cual debe contener la fecha del partido, sesión o examen. De esa forma puedes determinar cuando y quien obtivo los puntos, en qué sesión y podría definirse también contra quienes fue la cosa.
En otras palabras, da la impresión de que el modelo de datos no está correctamente definido.
Finalmente:
- En el UPDATE se puede usar WHERE, en el INSERT no.
- El INSERT puede ser múltiple, es decir, hacer N inserts en una misma sentencia, en el UPDATE no (a menos que el mismo valor se aplique a todos los que cumplan con el WHERE).
- La construcción de un INSERT multiple se hace en la programación. Sólo te puedo decir que debe hacerse así:
donde "..." representa los N grupos que debes crear dinamicamente.
- Cada grupo entre paréntesis debe ser de la misma cantidad de campos y ser los mismos que tiene la tabla, o de lo contrario habrá que indicar cuáles se insertan.
- En el UPDATE sólo puedes hacerlo con un UPDATE por cada valor a actualizar, y tiene el formato:
El cómo se construye esto en PHP es OFF TOPIC de este foro. Lo debes consultar con el Foro de PHP (
http://www.forosdelweb.com/f18/)
¿Se entiende?