背景
最近接到交通學院的一個web項目,我的工作是在web頁面上做個圖表並且定時刷新這個圖表,這里使用了Echarts API,關於如何使用,我抽時間再寫一篇博客,這里主要記錄一下,這個表里面的數據他們提供給我時是一個Excel表,那么我需要將其存儲在數據庫中,這也給我以啟發,我們今后接手項目時,別人給的數據是擦亂無章的,如何整理並結構化存儲是我們第一步需要做的。
插曲(Excel表中時間列自增)
由於數據庫表中有一列是日期+時間,也就是我們所熟悉的yyyy-MM-dd HH:mm:ss,但是她們中Excel只記錄了時間,沒有日期部分,這里為了造模擬數據,需要添加日期部分。
- 第一步
確定某一個單元格的時間,比如我這里確定了A1單元格的時間,現在想要后面依次增加3秒。
- 第二步
將光標定位到A2上,輸入
=TEXT((TEXT(1*A1,"[s]")+3)/(24*60*60),"e-mm-dd hh:mm:ss")
注意這里的A1就是確定的起始時間, +3代表加3秒
隨后向下拖動即可。效果如下:
說正事
使用Navicat 導入Excel到MySql數據中
這里使用的MySQL界面化工具是Navicat,不多說,直接干。
- 准備工作,要確定數據庫表的字段名和Excel表表頭對應一致,如果不一致,后面導入的時候也可自由匹配!比較麻煩,建議提前處理好。
- 第一步
選擇Import Wizard
- 第二步
選擇Excel文件類型, 親測其他格式的同樣可以!
- 第三步
Add File,選擇需要導入的Excel本地文件
- 第四步
勾選
- 第五步
這里需要選擇的是,表頭名在哪一行,數據開始是哪一行。我這里是第2行和第3行
- 第六步
選中需要導入數據庫哪一張表
- 第七步
將Excel表的表頭和數據庫表的字段名匹配上,如果數據庫表的字段和Excel表的表頭不匹配,就需要手動匹配,如果一樣,這里會自動匹配。
- 第八步
- 選擇第一個Append,顧名思義,添加到表中原有數據之后。
遇到坑了
我一開始導入之后,看到數據庫表中有數據了,性喜若狂啊,結果一看
我去,為毛我的時間全部都變成了1900-01-20,而我本身時間是2018-09-25啊。
開始百度
填坑
首先將時間列數據庫表的數據類型,設置為varchar,隨后導入,發現不會有錯,然后再改回datetime類型,我發現直接利用工具的Design Table改不行,改了之后還是1990-01-20。我也是運氣好,換了一種方式,執行sql語句
ALTER TABLE flow MODIFY time datetime
perfect!!!!
OK 搞定了。
最后
- 本文內容個人拙見,若有出入,歡迎指正。
- 歡迎賞臉關注:家佳Talk