Error en mysql

coleccionocromo Seguir

Delta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
8 Abr 2005
Mensajes
589
Hola!
Recientemente estoy recibiendo errores de la base de datos con el siguiente mensaje:

MySQL Error : Duplicate entry '8600-0344' for key 'PRIMARY'
Error Number : 1062

Este error "está" localizado en un pluging diseñado en exclusiva para el foro pero no consigo arreglarlo por más que reparo las tablas,optimizo y demás posibles soluciones.

Recurro a vosotros por si me podéis echar una manilla con este problema.
 

Andrés Durán

Xi
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
23 Abr 2009
Mensajes
4.371
Hola,

¿Cuál es el código del plugin?.
¿Cómo funciona?.
¿Ese es todo el mensaje de error que recibes en tu correo?.
 

coleccionocromo

Delta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
8 Abr 2005
Mensajes
589
El email con el error completo es el siguiente:
PHP:
Database error in vBulletin 3.8.5:

Invalid SQL:

		INSERT INTO mycard (mycolid,colid,ref,quantity)
		SELECT 8600,32,a.ref,0 from card a 
		LEFT JOIN mycard b ON a.ref=b.ref AND a.colid=b.colid AND b.mycolid=8600 
		WHERE a.colid=32 AND b.ref IS NULL ORDER BY a.ref;

MySQL Error   : Duplicate entry '8600-0344' for key 'PRIMARY'
Error Number  : 1062
Request Date  : Monday, July 19th 2010 @ 12:07:22 PM
Error Date    : Monday, July 19th 2010 @ 12:07:22 PM
Script        : http://www.cromosdefutbol.com/forum/collections.php?do=editcol&mycolid=8600
Referrer      : http://www.cromosdefutbol.com/forum/collections.php?
IP Address    : *******
Username      : ******
Classname     : vB_Database
MySQL Version :

El codigo...si me puedes decir que necesitas saber exactamente te lo diria. (?)

En cuanto a la función del programa es:

Un programa diseñado para el control de colecciones y cambios de cromos

Gracias!
 

imported_Elmer

Zeta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
19 Jul 2003
Mensajes
1.865
Lo que puedo notar ahí, esque estás editando una colección no creando una nueva. Por lo tanto, no deberías usar insert al editar, más bien deberías usar UPDATE en tu SQL para actualizar los datos ya existentes en la tabla. Si estás editando algo ya existente, obviamente te va a salir errores de base de dato ya que está queriendo crear una nueva fila de datos con datos con un primary key ya existente.

http://www.w3schools.com/SQl/sql_update.asp
 

coleccionocromo

Delta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
8 Abr 2005
Mensajes
589
Lo que puedo notar ahí, esque estás editando una colección no creando una nueva. Por lo tanto, no deberías usar insert al editar, más bien deberías usar UPDATE en tu SQL para actualizar los datos ya existentes en la tabla. Si estás editando algo ya existente, obviamente te va a salir errores de base de dato ya que está queriendo crear una nueva fila de datos con datos con un primary key ya existente.

SQL UPDATE Statement

Por lo que comentas tiene toda la pinta de ser este el problema,te explico.

Este error lo lanza cuando intentamos editar esa tabla en concreto y un usuario en particular.El resto de usuarios del foro no tienen ningún problema con esa tabla

A veces a dado problemas en otras tablas que con repararlas lo pude solucionar pero en este caso no consigo nada
 
Arriba