一個文件來自55服務器下的zsj_mgsj.s190_wgrk,導出之后,新建一個一樣的表結構然后原樣把近50M數據導回去,
導出之后用notepad++去把數據打開,卡了半分鍾,設置編碼格式為UTF-8,字體沒有改變,說明導出的源格式就是UTF-8,
我把文件格式在notepad++當中設置為ANSI,去navicat導入,嘗試了很多種編碼,包括UTF-8、20936 (Simplified Chinese GB2312)、10008 (MAC - Simplified Chinese GB 2312)和936 (ANSI/OEM - Simplified Chinese GBK),UTF-8導入的是亂碼,其它的格式報錯了,報錯內容類似於"invalid u\000A“或者"invalid u\000D",百度搜索了之后 說這個Unicode編碼代表空格和回車,
於是以為是文件格式錯誤,去notpad++當中擴展搜索'\r'和'\n‘,發現兩者的數量是一樣的,說明沒有多余的無法解析的'\r’或者'\n‘(windows)當中默認的換行是'\r\n',於是把JSON文件分成兩份,這樣便於找到錯誤字符所在的位置,定位到是”荺“讀取不了(我此時已經將文件格式設置為ANSI),把"荺“刪除之后成功導入。
第二天找同事的電腦進行導入,第一次導入的時候選擇的編碼格式是 10008 (MAC - Simplified Chinese GB 2312),導入報錯,”finished error 7000“,然后在notepad++當中把字符格式設置為UTF-8,然后進行導入,成功導入。沒有出現"荺“字導入不了的情況,於是我把自己電腦的navicat換成更同事一個版本的,也可以成功導入。