Pregunta

Im intentando actualizar queueStatusINT DONDE statusINT es de 8 y queueStatusINT no es igual a 2 y el tipo es $ tipo. Pero sigo obteniendo un error:

ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘ queueStatusINT!='2’, type=’int'' at line 1

Im usando esta consulta SQL para hacer la actualización:

UPDATE $mysqlTable SET queueStatusINT='2’ WHERE statusINT='8’, queueStatusINT!='2’, type=‘$type’;

También he dado cuenta de que puedo hacer un NO igual a en un comando SELECT ...

SELECT nameTXT FROM $mysqlTable WHERE queueStatusINT!='2' ORDER BY queueStatusINT DESC, priorityINT DESC, id ASC LIMIT 7;
¿Fue útil?

Solución

Es necesario usar y combinar sus criterios, no sólo comas.

Por ejemplo

UPDATE $mysqlTable 
SET    queueStatusINT = '2'
WHERE  statusINT      =  '8'
AND    queueStatusINT != '2'
AND    type           =  '$type'

Otros consejos

Cambiar su ACTUALIZACIÓN a:

UPDATE $mysqlTable 
SET queueStatusINT='2’ 
WHERE statusINT=8
AND queueStatusINT !=2 
AND type=‘$type’;

Asumo queueStatusINT es un entero (como su nombre indica) -. Usted debe dejar de lado el '' ya que simbolizan una cadena / carácter

Los mejores deseos, Fabian

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top