【问题标题】:MySQL JSON_SEARCH and JSON_REPLACE don't escape quotesMySQL JSON_SEARCH 和 JSON_REPLACE 不会转义引号
【发布时间】:2017-12-07 02:41:30
【问题描述】:

我在 MySQL 数据库中有一个 JSON 列。我正在尝试使用

将 JSON 对象替换为另一个对象
UPDATE table SET ColName = JSON_REPLACE(ColName, '{"sample": "sample"}');

执行此语句后,MySQL 似乎在我的 JSON 属性周围插入 \" 转义引号,如下所示:

{\"样品\":\"样品\"}

这导致我的 JSON_SEARCH 查询由于转义引号而无法找到“样本”。有没有一种方法可以使用 JSON_REPLACE 而无需在双引号中添加转义符?

我尝试在更新语句中将 JSON_UNQUOTE 包裹在 JSON_REPLACE 周围,但这并没有解决问题。

【问题讨论】:

标签: java mysql json escaping


【解决方案1】:

wchiquito 的回答有效

“试试... CAST('{"sample": "sample"}' AS JSON) ...

wchiquito,如果您发布答案,我可以将接受的答案更改为您的评论。

【讨论】:

    猜你喜欢
    • 2011-06-13
    • 2012-10-05
    • 1970-01-01
    • 2011-01-11
    • 2019-02-23
    • 2013-08-09
    • 2021-10-23
    • 1970-01-01
    • 2014-03-02
    相关资源
    最近更新 更多