執行 json_extra 提示 List index out of bound(-2) 問題
阿新 • • 發佈:2020-11-22
mysql版本:mysql5.7,mysql5.8
工具:navicat
如果是mysql 5.7 以下版本,自行升級,5.7以下版本不支援json_extra函式的使用。
目前測試的sql語句:
select json_extract('{"name":"Zhaim","tel":"13240133388"}',"$.name");
測試工具:navicat;
有三個不同的版本:11.1.13 - 企業版、
11.1.13 - premium、
12.0.18(64-bit) - Premium
如下,啟動圖一樣:
11.1.13 - 企業版、11.1.13 - premium執行sql後結果欄沒資料,點選資料表格,彈出框,而且是不停的彈出,挺噁心的,然後程式都退出了,如下圖:
一開始我以為是mysql的問題,網上下了一個5.8,花了半天時間再虛擬機器裝了一個,用11.1.13 - 企業版、11.1.13 - premium測試sql語句還是彈出,於是我調出mysql原始介面測試。
先測試5.7,效果如下:
沒有問題,再測試5.8(下面是shell 命令列介面):
也沒問題,恍然大悟,應該是navicat的問題,於是開啟第三個navicat:12.0.18(64-bit) - Premium,話說我怎麼裝了這麼多navicat,結果:
所以,在mysql5.7以上的版本中,json_extra函式式沒問題的,如果再彈出List index out of bound(-2),就換一個mysql客戶端試試,比如navicat12.0.18(64-bit) - Premium。問題解決。