簡體   English   中英

JSON 路徑表達式無效。 錯誤圍繞字符 position

[英]Invalid JSON path expression. The error is around character position

我像這樣將 json 數據插入到 mySql 數據庫中:

{
    "socialnetwork": {
        "twitter": "tw-u"
    },
    "information": {
        "country": "Cuba",
        "state": "Sancti Spiritus"
    },
    "settings": {
        "social-enable": "1"
    }
}

現在,我嘗試使用JSON_REPLACED方法更新social-enable值,如下所示:

$builder = $this->db->table('users');
$builder->where('id', 2)->set('information', "JSON_REPLACE(information, '$.settings.social-enable', '0')", false) ;
$builder->update();

在行動中我看到這個錯誤:

Invalid JSON path expression. The error is around character position 27.

我該如何解決這個問題?

JSON 路徑語法

... 鍵的名稱必須是雙引號字符串或有效的 ECMAScript 標識符(請參閱 ECMAScript 語言規范中的標識符名稱和標識符)。 ...

嘗試:

... JSON_REPLACE(information, '$.settings."social-enable"', '0') ...

更新

嘗試:

$builder->where('id', 2)->set('information', "JSON_REPLACE(information, '$.settings.\"social-enable\"', '0')", false);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM