5月 12 2010

PHP MySql でエラー 1054 メモ

queryを実行するとエラー

ERROR 1054 at line XX: Unknown column ‘XXXX’ in ‘where clause’

エラーが出ているのは
$sql = “DELETE FROM user_data WHERE user_id = “.$user_id;

column ‘XXXX’は入力した値が出ている、入力した値がcolummに無い?

意味がわからない。入力した値がcolummに存在するわけが無い。

以前、成功した別のスクリプトのコード
$sql = “DELETE from tbladdress where id = ” .$id;

同じにしか見えない。

何時間も格闘した結果、以下のコードで成功
$sql = “DELETE FROM user_data WHERE user_id = ‘”.$user_id.”‘”;

前回は条件が数値だったが今回は文字、だからシングルクォーテーションで囲まなければいけない、
まさか変数をクォーテーションで囲まなければいけないなんて思いもよらなかった。
変数に数値や文字だの無いPHPならではのエラー、まともな言語ならあり得ないよな~。

One Response to “PHP MySql でエラー 1054 メモ”

  1. […] 更には Unknown column ’where clause’ 解決したのはここのおかげ:http://blog.v7a.net/archives/453 ここは違った:http://colo-ri.jp/develop/2009/09/mysql5unknown_column_in_on_clause.html  […]

コメントをどうぞ

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

Alibi3col theme by Themocracy