2012-03-27 14 views
0

この単純なクエリが機能しない理由を知るには疲れています。なぜこの単純なクエリがエラーを出して動作していない

SELECT image_url FROM allimages WHERE for='projects' 

私を助けてください。私はmysqlとの接続を確認しました。これは大丈夫です。

+2

どのように正確に機能しませんか? –

+3

まず、 'for'という名前の列を持つことを勧めます。列名に_potentiallyの予約語を使用しないでください。実際に文脈上の意味を持つ説明的な名前を列に付けます。 – David

+0

stackoverflowで強調表示されているコードは、何が間違っているかを示しています – dirkbonhomme

答えて

3

for MySQLでreserved keywordですが、MySQLはそれを可能にします。これらの予約語は、照会で使用している間、バッククォート( `)で囲む必要があります。

試してみてください。

SELECT image_url FROM allimages WHERE `for`='projects' 
2

forは、mysqlのreservedワードです。あなたはそれらを引用することができますので、sqlは以下のようなキーワードに対してそれらを間違えません。

SELECT image_url FROM allimages WHERE `for`='projects' 
0

あなたの質問のディテールの欠如のために野生の推測、あなたがhttp://dev.mysql.com/doc/refman/5.1/en/reserved-words.htmlに応じ

をする必要がMySQLでの予約語である列名としてFORを使用しています囲み:

SELECT image_url FROM allimages WHERE `for`='projects' 
0

この代わりに試してみてください:

SELECT image_url FROM allimages WHERE `for`='projects' 

forは予約語であるため、@Interstellar_Coderは指摘しています。

関連する問題