我有很多從excel或csv導入數據的腳本。 99%的人都很好。爲什麼我的導入數據在mysql中搞砸了?
我有一個特定的領域 - 關鍵字 - 這是搞砸導入。
例子:
我輸入field-- >
Accelus,GRC,智能管理,策略管理,關係 風險,培訓,審計,風險管理,合規管理,Accelus 合規經理,ACM,Accelus風險管理,ARM,策略管理器, 世界檢查,鄉村檢查,IntegraScreen,審計 經理,AutoAudit,電子學習,GRC00971
我得到什麼了field--
Accelus,GRC,智能管理,策略管理,關係 風險,培訓,審計,風險管理,合規管理,Accelus 合規經理,ACM,Accelus風險經理,ARM,策略管理器, 世界檢查,鄉村檢查,IntegraScreen,金盻ÿ盼
MySQL表是InnoDB的/ UTF8。我試圖使用varchar和文本字段,但完全相同的結果。該文件正在從數據庫爲UTF8的服務器生成(據推測)。任何建議 - 這種情況發生在相當多的行上,並且正在爲我們的報告網站上的最終用戶銷燬導出和查找腳本。
更新:我把字符轉換成谷歌,他們是日本(糾正我,如果我錯了)。所以我想,讓我們打開Excel,看看會發生什麼。那麼數據看起來很正常,但是當我在Excel中將列格式更改爲'text'時,除了#####################之外,對於不良行(只是) - 請注意,7500中只有少數幾行。這些行前後的所有數據以及「壞」行的其餘部分都很好。它只是一列。所以我想我正在處理一個編碼問題,但這些字母看起來很正常。
你的'IMPORT'語句是怎麼樣的? 「審計管理器」中的「審計」之後,您的csv中是否有換行符?或者只是在您的文章中? 「搞砸」是什麼意思?錯誤的字符編碼和/或其他什麼? – citizen404
@ mind-404 - 我使用navicat。這個特定的表格有7500行,並且只有5個問題。導入只是繼續下去,所以下一行很好。我也應該說,同一排上的下一個領域也不錯。 – blankip
這是每行最後一列崩潰嗎?所以,我可能與最大行大小有關。你正在運行哪個MySQL版本? 'select version();' – citizen404