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 回答