本文介紹將excel導入到mysql數據庫的方法,相對來說比較簡單,但也可能會碰到一些小問題,在這里做一個小的總結。這里使用到的工具包括navicat,mysql數據庫以及excel,各個工具的版本信息如下,Navicat版本11.0.17,mysql版本5.7.31,excel版本office增強版2016。
1 navicat導入excel文件的步驟
基本上按照navicat的導入向導,進行順序操作,大部分都是選擇下一步就可以,其中有些選項需要了解一下。
1.1 創建數據庫
在navicat中創建數據庫,一般采用utf-8 unicode編碼,排序規則選用utf8_general_ci。
1.2 在數據庫的表上,點擊右鍵,選擇導入向導。
1.3 根據實際情況選擇對應的文件
此處使用的excel版本為2016,保存的文件后綴為elsx,選擇對應的2007以上版本。
1.4 選擇要導入的文件
1.5 確認導入表的字段和數據
默認情況下,將excel表中的第一行作為表的字段名稱,一般情況下將第一行的名稱都設置為英文,方便后續對表的操作。從第二行開始是表中的數據。
1.6 表名稱的確定
此處,源表表示excel的sheet,目標表是指mysql的表名稱,可以使用同樣的名稱,如果該表在mysql中不存在,則需要新建表,如果已經存在,則不需要新創建,直接向表中添加數據。
1.7 表字段的設置
這一步,是對表的字段進行設置,字段名稱是按照excel表中第一行的數據展示的,也可以修改表的字段名稱,比如修改為英文,方便后續操作。對應的類型也可以進行修改,如果字段的數據是很長的文本,可以將類型設置text。
1.8 選擇添加數據的模式
正常情況下,就選擇默認的添加記錄到目標表,也就是將excel中的數據添加到表中。最下面的復制,刪除目標全部記錄,並從源重新導入,是指刪除目標表的數據,用excel表中的數據替換。
1.9 開始導入數據
點擊開始,則excel中的數據開始向數據庫中導入。
1.10 導入后的信息展示
這是導入數據后的信息展示,正常情況下,會出現導入成功的提示。
1.11 數據導入前后的對比
- 導入前的excel數據
- 導入后的mysql數據
2 導入過程中可能碰到的一些問題
2.1 提示無法導入excel文件
碰到這個問題,一般需要保證excel文件處於打開的狀態,這樣就可以正常導入。這個也是和版本有關系,我用的這個版本沒有碰到這個問題。
2.2 注意excel中第一行的名稱
sheet對應表名,第一行對應字段名稱,字段名稱最好使用英文,而且不要使用特殊字符,也不要使用一些mysql的關鍵字。如果使用特殊字符,可能會在導入的時候出現問題。比如使用中文,而且使用了斜杠,導入的時候就會有報錯。
2.3 字段過長的問題
如果某個字段的數據是很長的文本,則導入的時候會報錯,不能全部導入。這時候就需要將字段類型設置為text的,默認都是varchar 255。
2.4 加入自增id
可以先導入一遍,然后刪除數據,設計表,增加id,設為主鍵,自增,然后,重新導入。
3 總結
利用navicat導入excel數據,相對來說比較簡單,上面總結了導入的步驟,基本上是傻瓜型操作,但也有可能會碰到上面列舉的問題。針對於不同的版本,可能會有一些差異,大家根據情況進行調整。