2011-06-24 2 views
5

J'ai passé de bonnes heures à essayer de réparer celui-ci.Quel est le problème avec ce SQL?

SELECT * 
FROM `users` 
WHERE `IP` = `123.231.213.132` 

Quel est le problème avec cela?

#1054 - Unknown column '123.231.213.132' in 'where clause' 

Répondre

19

Vous ne devez pas utiliser des guillemets avec des valeurs de colonne. vous devez utiliser des guillemets simples ou doubles sinon mysql considérera cette valeur comme un nom de colonne.

SELECT * 
FROM `users` 
WHERE `IP` = '123.231.213.132' 
+3

Quelle erreur stupide. – Vercas

7

Utilisez guillemets simples plutôt que des caractères backtick pour `123.231.213.132``

SELECT * 
FROM `users` 
WHERE `IP` = '123.231.213.132' 
1

It might be the single speach mark symbol. Try replacing them manually.

3

Use quotes ' not backticks ` for string literals

2

What's with the backticks? Use single quotes Also I'm assuming that users is a table name and IP is an entity of users.

Also...you have to end your statement with a semi-colon

1

you are using wrong quotation characters

to specify string value in mysql statement you have to use either '(single quote) or "(double quote)

`(backtick) characters are used to explicitly specify that quoted string represents a field name from where mysql should get the data

backticks are required in your statements if column names are conflicting with mysql's reserved keywords like index, where, etc