Ver Mensaje Individual
  #3 (permalink)  
Antiguo 02/02/2012, 17:40
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Unknown column 'M' in 'where clause'

Cita:
Unknown column 'M' in 'where clause'
Normalmente aparece cuando has escrito el nombre de una columna en el WHERE que no existe en ninguna de las tablas del FROM.
Este tipo de errores son comunes en los principiantes cuando mezclan código d eprogramación con SQL sin tener en cuenta las reglas de cada uno. Lo más probable es que "M" sea el contenido de una variable que tu estás usando para crear una comparación del tipo WHERE A = B, donde A es una columna de tipo VARCHAR o CHAR, y B es una cadena de texto, pero lo estás haciendo de modo que el contenido de B no quede representado como cadena.
Las cadenas de texto, en MySQL se deben encerrar entre apóstrofos ('), no entre comillas (") o acentos inversos (`), los cuales se usan para encerrar los nombres de tablas, columnas o bases.
Entonces:
1) No uses apóstrofos para crear la cadena de la sentencia, usa comillas.
2) Pon las variables que contengan cadenas de texto entre apóstrofos dentro de la consulta SQL.
3) No pongas apóstrofos si vas a comparar valores numéricos (exigen conversiones).
O sea:
Código PHP:
Ver original
  1. $query = "SELECT a, b, c, d FROM tabla WHERE a = '$variable';";
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)