2017-07-08 166 views
0

如何以\\u在json字段中跳转\u将 u替换为mysql中的\ u

,现在的情况是,读取列之后,JSON解析器给我,当我和\\u取代\u这是解决了一个错误,但

update table_name set column_name=REPLACE(column_name, '\u', '\\u'); 

更新场给我一个错误

ERROR 3140 (22032): Invalid JSON text: "Invalid escape character in string." at position 564 in value for column 'table_name.column_name'. 

我也尝试在语法中转义\,但无济于事。任何人都可以请帮忙。

+1

两个问题:1,你确定这是你需要做的,解决什么问题,你要解决什么? 2.你真的想要解决什么问题?你是如何将数据导入无效的列的?您不应该在不使用JSON函数的情况下操纵JSON列,并且根据定义JSON列中的数据不需要直接操作。 –

+0

因此,这是使用Activerecord序列化器在rails中序列化的旧数据,我在一个新表格中迁移到了json列,但是在分析此JSON时出现错误。我改变\ u以手动在JSON中,并看到它解决了问题 – akabhirav

回答

0

为SQL更新表值\ u到\\ U:

update table_name set column_name=REPLACE(column_name, '\\u', '\\\\u') [where condition]; 
+0

仍然给我同样的错误 – akabhirav

相关问题