我用Navicat for mysql管理mysql,經常導入csv文件,遺憾的是不能直接導入,那么csv文件應該怎么導入到mysql中呢?
一、轉xls文件或xlsx格式,即excel格式。但遺憾的是xls文件有很多限制,比如最多6萬5000條數據,比如存放數據大小限制等等;而xlsx也偶然出現一些莫名錯誤,但基本沒什么問題。
二、轉xml格式。這個導入一般都不會有什么問題,只是需要明確行和列字段,有的時候你可能還需要對xml再次修改。
上面兩種方法都是可以把csv導入到mysql中的,只是操作起來比較麻煩,那么有沒有什么更簡單的方法,比如可以直接把csv導入mysql的?答案是肯定的。
我們用文本編輯器打開csv文件可以發現,csv數據一條占一行,而每個單元格之間是用逗號分隔的,因此應該是可以把csv當作txt文件導入的!
測試結果也說明了上面的猜想:csv可以直接當作txt文件,直接導入到mysql中!具體操作步驟如下:
1、導入時選擇txt文件。需要注意的是,文件格式需要選擇“全部文件(*.*)”,要不你會看不到你要選擇的csv文件。
2、欄位分隔符選擇逗號。
3、其他操作你應該都會吧,我就略過了,到最后一步,選擇字段時發現:亂碼了!
這樣導入肯定不行,所以我們的錯誤在于?肯定是編碼問題唄,回到第1步,在選擇了文件后我們需要制指定一下編碼格式(gb2312,為方便你可以直接選中“編碼”后輸入20936)。具體如下圖所示:
繼續之前的步驟,完美導入。
最后,附加一點相關操作技巧:多個csv文件的合并方法。我們要導入的csv文件有的時候可能會很多,一個個導入實在是繁瑣而浪費時間,如果能夠把多個csv文件合并成一個,那么導入就更加簡單方便了。那么多個csv文件應該如何合并呢?答案很簡單:
1、把需要合并的csv文件放到同一個文件夾中,該文件夾中不要有其他csv文件
2、打開文本編輯器,復制以下內容(其中最核心的是copy *.csv all_keywords.csv一句,其他可以不要):
@echo off copy *.csv all_keywords.csv @echo @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @echo @@@@@ It's ok! @@@@@ @echo @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ pause
3、另存為x.bat格式,保存到csv所在文件夾
4、雙擊該bat文件,然后會在該文件夾中創建一個名為all_keywords.csv的文件,該文件即為合并多個csv后所得的最終文件!
© 致遠 2020-11-18,原創內容,轉載請注明出錯:mysql導入csv文件及多個csv的合并方法