1

私はMySQLの専門家ではなく、これに問題があります...

だから、私はフォーラムボードデータベースを持っています。表の1つに、置き換える必要のある古いコードがあります。私はこれを使おうとしています:

Update ibf_posts
Set    post = replace(post, '<div width="95%" style="margin:8px 26px 4px 26px"><a href="javascript:void(0);" onclick="javascript:spoil(this);"><div class=\'spoilertop\'><b>SPOILER</b> [Show/Hide]</div></a><div style="display: none;" class="spoilermain">', '<div width="95%" style="margin:8px 26px 4px 26px"><a class=\'spoilertop\' style=\'display:block;\'><b>SPOILER</b> [Show/Hide]</a><div class="spoilermain">');
WHERE  post LIKE '%<div width="95%" style="margin:8px 26px 4px 26px"><a href="javascript:void(0);" onclick="javascript:spoil(this);"><div class=\'spoilertop\'><b>SPOILER</b> [Show/Hide]</div></a><div style="display: none;" class="spoilermain">%';

しかし、それは機能していません。それは言う:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE  post LIKE '%<div width="95%" style="margin:8px 26px 4px 26px"><a href="ja' at line 1 

奇妙なことに、ローカルホストで試したので、正常に動作しています。しかし、ライブサーバーで試したところ、機能しません。私のMySQLバージョン(ライブサーバー上)はMySQL4.1.22です。

何か助けはありますか?

4

3 に答える 3

4

2行目の終わりにあるセミコロンは、クエリが終了していることを示しているため、削除する必要がありますが、これは正しくありません。

于 2012-04-03T21:19:23.817 に答える
1

2行目;の最後にがあります。消去するとクエリが機能します

于 2012-04-03T21:20:19.227 に答える
1

セミコロン(;)は、クエリを終了するために使用されます。つまり、すべてのクエリの途中ではなく、最後に1つのセミコロンのみを使用します。

あなたのコードがローカルホストで機能したことにショックを受けました。クエリがローカルホストで希望どおりに機能したか、または他のことを実行していたことを確認しましたか。

于 2012-04-04T05:47:49.523 に答える