我可以使用 MySQL 工作台替换 Mysql 中名为“key”的列中的字符串吗?

Posted

技术标签:

【中文标题】我可以使用 MySQL 工作台替换 Mysql 中名为“key”的列中的字符串吗?【英文标题】:Can I replace a string inside of a column named "key" in Mysql using MySQL workbench? 【发布时间】:2021-03-25 17:12:38 【问题描述】:

我需要替换几百万个条目中的几千个唯一字符串。手工操作不是一种选择。

如何使用 mysql 工作台替换 Mysql 中名为“key”的列中的字符串?除非我重命名列名,只是为了进行操作,否则不可能吗?有什么解决办法吗?

第一行正常,第二行坏了:

UPDATE DB_NAME.TABLE_NAME SET module = replace(module, 'ORIGINAL_STRING', 'REPLACED_STRING');
UPDATE DB_NAME.TABLE_NAME SET key = replace (key, 'ORIGINAL_STRING', 'REPLACED_STRING');

错误代码

错误代码:1064。您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在 'key = replace (key 'ORIGINAL_STRING', 'REPLACED_STRING')' 附近使用正确的语法

【问题讨论】:

key是mysql的一个关键词,把`key`一样放在单词周围让你得到你想要的 SET key = 替换 (key 'ORIGINAL_STRING', 'REPLACED_STRING'); / 不会工作。 同样的错误? 您在 `key` 后缺少一个逗号。应该是SET `key` = REPLACE(`key`, 'ORIGINAL_STRING', 'REPLACED_STRING'); @kmoser 感谢您注意到逗号!这解决了“第二个”问题。 【参考方案1】:

key是mysql的关键字。

你需要用`这个词来包围:

`键`

它会让你实现你想要的。

【讨论】:

以上是关于我可以使用 MySQL 工作台替换 Mysql 中名为“key”的列中的字符串吗?的主要内容,如果未能解决你的问题,请参考以下文章

查找和替换整个mysql数据库

查找和替换整个mysql数据库

MySQL可以替换多个字符吗?

MySql查询在Select中用空字符串替换NULL

使用 PHPMyAdmin 替换 MySQL 中的字符串

如何在 MySQL 中进行正则表达式替换?