Insertar registro para un mismo primary key

Tengo un formulario con varios campos de una tabla, en ese formulario hay datos de una persona ejemplo código, nombre, curso, titulo_curso, horas, fecha. Entonces para esta persona su código va hacer el mismo pero mientras valla realizando nuevos curso se le cargaran a la tabla igual para otras personas. Ayuda! Lo intento haer y me dice código repetido. La idea es que:
Código: 1
Nombre: pedro
Curso: php y mysql
fecha: 25/03/2011
Horas: 10
Esto primera inserción luego
Llamar a ese código: 1
Cargarle nuevo curso y a la consulta seria:
Código: 1
Nombre: pedro
Curso: fecha: horas:
php y mysql 25/03/2011 10
Eclipse y java 24/06/2011 20
Microsft access 2/09/2011 8.

1 Respuesta

Respuesta
1
Deberías replantearte la forma de las tablas en la bbdd, los primary keys no pueden ser repetidos, son números que difiere una fila de otra que nunca pueden ser iguales.
Por ejemplo replantéate asociar varias tablas, por ejemplo una con los estudiantes o usuarios con sus datos y por ejemplo en la columna "Cursos" por ejemplo su contenido que sea "1-2-3"
Que va a ir asociado con otra tabla con su primary key que el 1 sea el curso de BBDD el curso 2 de Excel y el curso 3 de PHP, así de esta forma un poco rudimentaria sabes que el estudiante tal ha hecho los cursos 1, 2 y 3.
Espero que te haya quedado algo más claro el posible planteamiento.
Hola amigo gracias por responder, he estado averiguando y pienso hacer dos tablas una con datos personales y otra cursos pero ambas van a tener el cambo código pero en la tabla cursos el campo código seria auto_increment, no se si estoy en lo correcto así al insertar datos en 'datos_personales' y el primer curso en 'cursos' cuando a este usuario le quiera inserta un nuevo curso lo llamo por su mismo código de usuario y se le sumaria la inserción a esa tabla 'cursos'
Seria
'datos_personales'
codigo= 12345
nombre: juan
'cursos'
1
codigo=12345
php y mysql
Y se le seguiría agregando cursos y con el auto_increment
2
Microsoft access
etc... pero tengo dudas al respecto.!
Si, efectivamente, el campo código o ID sería lo más correcto que fuera primary_key auto_increment, es más, también en la tabla usuarios el código lo pondría primary_key auto_increment, para llevar un cierto orden.
El planteamiento es bueno es un comienzo de relacionar tablas, así cuando un usuario por ejemplo se registre en el curso "microsoft Access" código "2", en el campo de cursos de ese usuario en la tabla usuarios, se le agregaría el "-2", el - es un separador, ponte el caso que tiene más de un curso, una forma de separar los cursos es por "guiones" o por comas "," así quedaría, ejemplo: "1-2-3".

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas