Mira, para que veas que no es la tabla en sí lo que puede ocasionar el problema, sino la forma en que se use, comé tu script, generé la base y ejecuté estas tres sentencias:
Código MySQL:
Ver originalmysql
> INSERT INTO jugadores
(nick
, nombre
, dni
, localizacion
, id_juego
) -> VALUES('JAM56', 'ALBERTO DIAZ YADAROLA', 12345567, 'MI CASA', 1); Query OK, 1 row affected (0.10 sec)
mysql
> INSERT INTO jugadores
(nick
, nombre
, dni
, localizacion
, id_juego
) -> VALUES('MANUELVER', 'MANUEL VERGARA LEMOS', 145567, 'CASALES', 1); Query OK, 1 row affected (0.00 sec)
+----+-----------+-----------------------+----------+--------------+----------+
| id | nick | nombre | dni | localizacion | id_juego |
+----+-----------+-----------------------+----------+--------------+----------+
| 1 | JAM56 | ALBERTO DIAZ YADAROLA | 12345567 | MI CASA | 1 |
| 2 | MANUELVER | MANUEL VERGARA LEMOS | 145567 | CASALES | 1 |
+----+-----------+-----------------------+----------+--------------+----------+
Como puedes apreciar, ambos registros se insertaron perfectamente. Ahora bien, si, como sospecho, la sentencia de inserción no se generó correctamente (no tiene los apóstrofes inicial y final de los valores), podría suceder esto:
Código MySQL:
Ver originalmysql
> INSERT INTO jugadores
(nick
, nombre
, dni
, localizacion
, id_juego
) -> VALUES(FEDERICOVB
','FEDERICO VELEZ BUENO
', 145567, 'CASALES
', '1); ERROR
1064 (42000): You have an error
in your SQL syntax
; check the manual that
VELEZ BUENO', 145567, 'CASALES',
'1)' at line 2
Pero es una situación indetectable con el código de creación y ejecución de la sentencia que tu tienes.
O bien, si estás manejando los ID autonuméricos por ti mismo, podría darse esta situación:
Código MySQL:
Ver originalmysql
> INSERT INTO jugadores
(id
, nick
, nombre
, dni
, localizacion
, id_juego
) -> VALUES('1','FEDERICOVB','FEDERICO VELEZ BUENO', 145567, 'CASALES', '1'); ERROR
1062 (23000): Duplicate entry
'1' for
key 1mysql>
Tampoco es detectable en tu sistema, porque no capturas los errores de MySQL...