1

192行で非常に重要なデータベース文字列の修正を行う必要があり、これが正しい構文であるかどうか疑問に思っています:

UPDATE `DATABASE_NAME`.`TABLE_NAME` SET `FIELD_NAME` = REPLACE(`FIELD_NAME`,`REPLACE_THIS_STRING`,`WITH_THIS_STRING`);

前もって感謝します!

4

2 に答える 2

2

見つける最善の方法は、SELECT最初にステートメントとして記述して結果を「プレビュー」することです。

SELECT field_name As before
     , Replace(field_name, 'replace this string', 'with this string') As after
FROM   table_name

オプションWHEREの句 (置換文字列を含む行のみに影響するため):

...
WHERE  field_name LIKE '%replace this string%'
于 2013-11-05T09:17:58.840 に答える
0

まぁ、こう書くと

UPDATE `DATABASE_NAME`.`TABLE_NAME` SET `FIELD_NAME` = 
REPLACE(`FIELD_NAME`,`REPLACE_THIS_VALUE`,`WITH_THIS_VALUE`);

テーブルにはこれらの 192 行のみが含まれていますか? WHEREそれ以外の場合は、構文に a を追加する必要があります。または、すべての FIELD_NAME 行を更新します。

@gveeが提案するように、最初に行を選択して、結果がどのように見えるかを確認して、更新スコープが正しいことを確認してください

于 2013-11-05T09:17:42.667 に答える