2010-12-07 3 views
2

更新: 問題が見つかりました.SQL文を画面上ではなくファイルに出力し、SQL文の最後に隠された余分な文字があることに気付きました。一度削除してもクエリは正常に機能しました。 Webからステートメントを切り取って貼り付けることは、それを省略していました。助けてくれてありがとう。 修正済み。PHPでのMySQLエラー(CLIではなく)

私は次のクエリでMySQLから1064のエラーが表示されます。

update `table` set `id` = "152614", 
`Field2` = "151", 
`Field3` = "11", 
`Field4` = "1587", 
`Field5` = "Elevator", 
`Field6` = "", 
`Field7` = "", 
`Field8` = "", 
`Field9` = "", 
`Field10` = "", 
`Field11` = "", 
`Field12` = "0", 
`Field13` = "0", 
`Field14` = "0", 
`Field15` = "0", 
`Field16` = "0", 
`Field17` = "0", 
`Field18` = "0", 
`Field19` = "0", 
`Field20` = "0", 
`Field21` = "0", 
`Field22` = "0", 
`Field23` = "0", 
`Field24` = "0", 
`Field25` = "0", 
`Field26` = "0", 
`Field27` = "0", 
`Field28` = "0", 
`Field29` = "0", 
`Field30` = "0", 
`Field31` = "0", 
`Field32` = "0", 
`Field33` = "0", 
`Field34` = "0", 
`Field35` = "0", 
`Field36` = "1065353216", 
`Field37` = "0", 
`Field38` = "0", 
`Field39` = "0", 
`Field40` = "0", 
`Field41` = "0", 
`Field42` = "0", 
`Field43` = "0" where id ="152614" 

MySQLエラー1064:あなたのSQL構文でエラーが発生しています。あなたのMySQLサーバのバージョンに対応するマニュアルをチェックしてください。右の構文は43行目近くにあります。

43行目が最後の行です。

私はmysqlのCLIに貼り付けた場合、それが正常に動作します:

クエリOK、マッチした1影響を受けた行(0.00秒) 行:1の変更:1つの警告:0

を私は「この時点で、損失、任意のアイデアでm?ありがとう。

MySQLのバージョン:5.1.52 PHPバージョン:5.3.3

それは私のスクリプトではかなり深いですが、エラーが発生し一部は次のとおりです。

$result = mysql_query($sql); 
if (mysql_errno()) { 
echo "MySQL error ".mysql_errno().": ".mysql_error()."\n<br>When executing <br>\n$sql\n<br>"; 

I出力$ sqlをした場合、上記のクエリのペーストと同じです(上記はエラーラインからのものです)。

+1

あなたはPHPコードを貼り付けてくださいできますか? –

+0

奇妙な。 $ sqlの正確な値は本当ですか?どのように$ SQLクエリを構築していますか? –

+0

$結果行の直前に$ sqlを出力しようとしましたが、これをCLIに貼り付けて同じ結果を得ました(クエリOK ..)。 $ sql。= '''。$ field ['name']。 '' = "' .mysql_real_escape_string($ data)。 ';'; – Rob

答えて

1

問題が見つかりました。私は画面上ではなくファイルにsql文を出力し、SQL文の最後に隠された余分な文字があることに気付きました。一度削除してもクエリは正常に機能しました。 Webからステートメントを切り取って貼り付けることは、それを省略していました。助けてくれてありがとう。一定。

関連する問題