記錄一次mysql使用load into命令導入csv格式數據的過程


今天從qwiklab實驗獲取一組數據,大概有5萬條,在qwiklab實驗室使用的是pgsql數據庫,但是今天想把他插入本地的mysql數據庫中。

1、首先是查看一下數據內容:

數據中有的是空值,有的是boolean類型的值。那我們就要想想怎么插入數據庫了。

2、我們先在mysql中建表。

建表語句比較長,一共有18個字段。

這里說一下:因為一開始是將數據中的“true”和“false”的數據插入到Mysql的boolean類型中,但是出現了50萬條的警告,平均一條數據就10個警告。出現警告的原因是:字符“true”無法插入mysql的boolean類型中,感覺這就很奇怪了,仔細分析一下原來是數據文件中的“true”導入到數據庫中變成了字符類型了,導致插入不進去(這里聲明一點,mysql是沒有boolean類型的,凡是將字段屬性聲明為boolean類型,mysql會自動轉化為tinyint(1)類型)。也就是說,字符類型插入數值類型,那是肯定插不進去的啊。

所以我就不在mysql中創建boolean的屬性了,直接創建成varchar類型的屬性了。

3、開始插入scv的數據。

 4、這樣子就插入成功了。也沒有警告。

 

問題1:

嘗試導入數據的時候出現錯誤:

The MySQL server is running with the --secure-file-priv option so it cannot execute this statement

上網查了一下,應該是mysql設置的權限,可以使用

show variables like '%secure%';查看 secure-file-priv 當前的值是什么

 請注意上面的這個“/root/”是我修改之后的,剛開始報錯的時候查看這個值是“NULL”。

我們需要在配置文件中修改這個值

然后再重啟MySQL就可以了。

問題2:

我們可以參考這個博客文章的導入數據的錯誤分析:http://blog.itpub.net/28218939/viewspace-2139721/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM