圖文詳解如何在navicat中導(dǎo)入excel表格數(shù)據(jù)
基礎(chǔ)操作篇
1. 首先打開navicat 軟件,進(jìn)入后打開連接
2. 進(jìn)入后選擇新建數(shù)據(jù)庫
3. 數(shù)據(jù)庫名隨便輸入一個,字符集選擇 utf8,排序規(guī)則選擇utf8_general_ci ,這樣可以最大程度地支持中文 ,點擊好,新建數(shù)據(jù)庫
4. 打開剛剛創(chuàng)建的數(shù)據(jù)庫:
5. 進(jìn)去后在表這一列選擇導(dǎo)入向?qū)?/h3>
6. 進(jìn)入后選擇excel 文件(*.xls, *.xlsx) 選項,點擊繼續(xù)
7. 選擇添加文件,將文件加入,點擊繼續(xù)
8.選中加載出來的數(shù)據(jù)表,選擇繼續(xù)
9.默認(rèn)用第一行作為sql 表的表頭,第二行開始作為真實的數(shù)據(jù)內(nèi)容,點擊繼續(xù)
10.點擊繼續(xù)
11.映射字段這一步可以對表字段進(jìn)行一定的調(diào)整,在不需要調(diào)整的情況下點擊繼續(xù)(默認(rèn)以剛選擇的第一行左右sql 的表字段)
12.接下來一般選擇追加模式,點擊繼續(xù)
(追加,不會清空掉原有數(shù)據(jù),如需要導(dǎo)入多張表的情況下,可以選擇追加)
13.接下來點擊開始即可導(dǎo)入,記得一定要點開始?。。?!
14. 60 多萬行數(shù)據(jù)導(dǎo)入成功,耗時70 多秒,點擊完成即可成功導(dǎo)入數(shù)據(jù)
16. 點擊表里面的sheet1 即可看到數(shù)據(jù)
17. 打開命令行運行sql,點擊上方表頭查詢,進(jìn)入sql 命令窗口
18. 進(jìn)入后點擊圖中位置新增查詢
19. 進(jìn)入命令窗口
20. 比如此處我們查詢一下總共的導(dǎo)入數(shù)據(jù)有多少條
SELECT COUNT(1) FROM Sheet1
21. 得到運行結(jié)果如下
好了,以上就完成了從excel 中導(dǎo)入數(shù)據(jù)到mysql ,并執(zhí)行sql 語句的過程,我們可以通過寫sql 來做各種各樣的查詢哦~
進(jìn)階操作篇
下面為進(jìn)階內(nèi)容,如果遇到查詢緩慢,我們可以通過新增索引來解決查詢緩慢問題
通過索引可以提效99% 的查詢慢問題場景
進(jìn)入及設(shè)計方式如下:
22. 從左欄進(jìn)入表,點擊箭頭那的編輯符合那里,進(jìn)入設(shè)計表
23.進(jìn)入后選擇第二個選項,即索引這一欄,然后進(jìn)入,就可以看到如下的界面
24.點擊+ 號處,新增索引
25, 索引名稱隨便填一個,比如填個newindex,然后字段名選擇對應(yīng)的表頭的某一列名稱
26. 關(guān)于索引類型選擇
索引類型可以選擇 normal (普通索引),一般選擇,如果能夠明確該列中的任意值都不會重復(fù)的話,可以選擇unique(唯一索引)、fulltext 為全文本索引,一般用于會被like 的字段處,spatial 索引為空間索引,但使用這個,需要將字段 置為not null(或者能夠明確非空),我這里選擇了normal(因為我里面的數(shù)據(jù)是有重復(fù)的,非唯一)
27、關(guān)于索引方法選擇
索引方法選擇BTREE(b+樹 索引),也可以選擇hash ,一般的隨意數(shù)據(jù)比較難看出兩者的區(qū)別,但hash 索引對一些范圍查詢優(yōu)化得不是很好
28. 至此,一條索引就新建完成啦~
29. 保存索引
記得一定要點擊保存按鈕,然后可以再去原來的查詢界面查看查詢效果的改進(jìn)咋樣
30.效果對比
此處是一個加入索引前后的效果對比,可以明顯看到,加入索引后,查詢速度有了很大的提升哦~
附:mysql spatial簡介_詳細(xì)介紹mysql索引類型:FULLTEXT、NORMAL、SPATIAL、UNIQUE
mysql索引類型:FULLTEXT、NORMAL、SPATIAL、UNIQUE的詳細(xì)介紹
Normal 普通索引
表示普通索引,大多數(shù)情況下都可以使用
Unique 唯一索引
表示唯一的,不允許重復(fù)的索引,如果該字段信息保證不會重復(fù)例如身份證號用作索引時,可設(shè)置為unique
約束唯一標(biāo)識數(shù)據(jù)庫表中的每一條記錄,即在單表中不能用每條記錄是唯一的(例如身份證就是唯一的),Unique(要求列唯一)和Primary Key(primary key = unique + not null 列唯一)約束均為列或列集合中提供了唯一性的保證,Primary Key是擁有自動定義的Unique約束,但是每個表中可以有多個Unique約束,但是只能有一個Primary Key約束。
mysql中創(chuàng)建Unique約束
Full Text 全文索引
表示全文收索,在檢索長文本的時候,效果最好,短文本建議使用Index,但是在檢索的時候數(shù)據(jù)量比較大的時候,現(xiàn)將數(shù)據(jù)放入一個沒有全局索引的表中,然后在用Create Index創(chuàng)建的Full Text索引,要比先為一張表建立Full Text然后在寫入數(shù)據(jù)要快的很多
FULLTEXT 用于搜索很長一篇文章的時候,效果最好。用在比較短的文本,如果就一兩行字的,普通的 INDEX 也可以。
SPATIAL 空間索引
空間索引是對空間數(shù)據(jù)類型的字段建立的索引,MYSQL中的空間數(shù)據(jù)類型有4種,分別是GEOMETRY、POINT、LINESTRING、POLYGON。MYSQL使用SPATIAL關(guān)鍵字進(jìn)行擴(kuò)展,使得能夠用于創(chuàng)建正規(guī)索引類型的語法創(chuàng)建空間索引。創(chuàng)建空間索引的列,必須將其聲明為NOT NULL,空間索引只能在存儲引擎為MYISAM的表中創(chuàng)建
btree索引和hash索引的區(qū)別
1、BTREE(B樹(可以是多叉樹)) {主流使用}
2、HASH(key,value) 這種方式對范圍查詢支持得不是很好
hash 索引結(jié)構(gòu)的特殊性,其檢索效率非常高,索引的檢索可以一次定位,不像B-Tree 索引需要從根節(jié)點到枝節(jié)點,最后才能訪問到頁節(jié)點這樣多次的IO訪問,所以 Hash 索引的查詢效率要遠(yuǎn)高于 B-Tree 索引。
可 能很多人又有疑問了,既然 Hash 索引的效率要比 B-Tree 高很多,為什么大家不都用 Hash 索引而還要使用 B-Tree 索引呢?任何事物都是有兩面性的,Hash 索引也一樣,雖然 Hash 索引效率高,但是 Hash 索引本身由于其特殊性也帶來了很多限制和弊端,主要有以下這些。
(1)Hash 索引僅僅能滿足”=”,”IN”和”<=>”查詢,不能使用范圍查詢。
由于 Hash 索引比較的是進(jìn)行 Hash 運算之后的 Hash 值,所以它只能用于等值的過濾,不能用于基于范圍的過濾,因為經(jīng)過相應(yīng)的 Hash 算法處理之后的 Hash 值的大小關(guān)系,并不能保證和Hash運算前完全一樣。
(2)Hash 索引無法被用來避免數(shù)據(jù)的排序操作。
由于 Hash 索引中存放的是經(jīng)過 Hash 計算之后的 Hash 值,而且Hash值的大小關(guān)系并不一定和 Hash 運算前的鍵值完全一樣,所以數(shù)據(jù)庫無法利用索引的數(shù)據(jù)來避免任何排序運算;
(3)Hash 索引不能利用部分索引鍵查詢。
對于組合索引,Hash 索引在計算 Hash 值的時候是組合索引鍵合并后再一起計算 Hash 值,而不是單獨計算 Hash 值,所以通過組合索引的前面一個或幾個索引鍵進(jìn)行查詢的時候,Hash 索引也無法被利用。
(4)Hash 索引在任何時候都不能避免表掃描。
前面已經(jīng)知道,Hash 索引是將索引鍵通過 Hash 運算之后,將 Hash運算結(jié)果的 Hash 值和所對應(yīng)的行指針信息存放于一個 Hash 表中,由于不同索引鍵存在相同 Hash 值,所以即使取滿足某個 Hash 鍵值的數(shù)據(jù)的記錄條數(shù),也無法從 Hash 索引中直接完成查詢,還是要通過訪問表中的實際數(shù)據(jù)進(jìn)行相應(yīng)的比較,并得到相應(yīng)的結(jié)果。
(5)Hash 索引遇到大量Hash值相等的情況后性能并不一定就會比B-Tree索引高。
對于選擇性比較低的索引鍵,如果創(chuàng)建 Hash 索引,那么將會存在大量記錄指針信息存于同一個 Hash 值相關(guān)聯(lián)。這樣要定位某一條記錄時就會非常麻煩,會浪費多次表數(shù)據(jù)的訪問,而造成整體性能低下。
在實際操作過程中,應(yīng)該選取表中哪些字段作為索引?
為了使索引的使用效率更高,在創(chuàng)建索引時,必須考慮在哪些字段上創(chuàng)建索引和創(chuàng)建什么類型的索引,有7大原則:
1.選擇唯一性索引
2.為經(jīng)常需要排序、分組和聯(lián)合操作的字段建立索引
3.為常作為查詢條件的字段建立索引
4.限制索引的數(shù)目
5.盡量使用數(shù)據(jù)量少的索引
6.盡量使用前綴來索引
7.刪除不再使用或者很少使用的索引
8. 經(jīng)常更新修改的字段不要建立索引(針對mysql說,因為字段更改同時索引就要重新建立,排序,而Orcale好像是有這樣的機(jī)制字段值更改了,它不立刻建立索引,排序索引,而是根據(jù)更改個數(shù),時間段去做平衡索引這件事的)
9、不推薦在同一列建多個索引
寫在最后:
到此這篇關(guān)于如何在navicat中導(dǎo)入excel表格數(shù)據(jù)的文章就介紹到這了,更多相關(guān)navicat導(dǎo)入excel表格數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
錯誤代碼:1100 Table ''t_depart_info'' was not locked with LOCK T
這篇文章就是告訴大家如何解決錯誤代碼:1100 Table 't_depart_info' was not locked with LOCK TABLES,遇到類似問題的朋友可以參考一下2015-10-10海量數(shù)據(jù)庫的查詢優(yōu)化及分頁算法方案 2 之 改良SQL語句
海量數(shù)據(jù)庫的查詢優(yōu)化及分頁算法方案 2 之 改良SQL語句...2007-03-03大數(shù)據(jù)時代的數(shù)據(jù)庫選擇:SQL還是NoSQL?
執(zhí)行大數(shù)據(jù)項目的企業(yè)面對的關(guān)鍵決策之一是使用哪個數(shù)據(jù)庫,SQL還是NoSQL?SQL有著驕人的業(yè)績,龐大的安裝基礎(chǔ);而NoSQL正在獲得可觀的收益,且有很多支持者。我們來看看兩位專家對這個問題的看法2014-03-03最新統(tǒng)計排名前十的SQL和NoSQL數(shù)據(jù)庫排行榜
這篇文章主要介紹了最新統(tǒng)計排名前十的SQL和NoSQL數(shù)據(jù)庫排行榜,本文包括Oracle、MySQL、Microsoft SQL Server、PostgreSQL、MongoDB等數(shù)據(jù)庫,需要的朋友可以參考下2014-09-09dbeaver工具連接達(dá)夢數(shù)據(jù)庫的完整步驟
DBeaver數(shù)據(jù)庫連接工具是我用了這么久最好用的一個數(shù)據(jù)庫連接工具,擁有的優(yōu)點,支持的數(shù)據(jù)庫多、快捷鍵很贊、導(dǎo)入導(dǎo)出數(shù)據(jù)非常方便,下面這篇文章主要給大家介紹了關(guān)于dbeaver工具連接達(dá)夢數(shù)據(jù)庫的完整步驟,需要的朋友可以參考下2023-05-05關(guān)系型數(shù)據(jù)庫的設(shè)計規(guī)則詳解
大家好,本篇文章主要講的是關(guān)系型數(shù)據(jù)庫的設(shè)計規(guī)則詳解,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽2021-12-12關(guān)于SQL中PIVOT函數(shù)的使用方法詳解
SQL Server中的PIVOT函數(shù)是一種用于將行數(shù)據(jù)轉(zhuǎn)換為列數(shù)據(jù)的表格旋轉(zhuǎn)函數(shù),這篇文章主要給大家介紹了關(guān)于SQL中PIVOT函數(shù)的使用方法,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-12-12Nebula?Graph解決風(fēng)控業(yè)務(wù)實踐
本文主要講述?Nebula?Graph?是如何通過眾安保險的選型,以及?Nebula?Graph?又是如何落地到具體業(yè)務(wù)場景幫助眾安保險解決風(fēng)控問題,有需要的朋友可以借鑒參考下2022-03-03