萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> Mysql中文亂碼及導出sql語句和Excel的相關解決方法

Mysql中文亂碼及導出sql語句和Excel的相關解決方法

   這幾天基於Heritrix寫了一個爬蟲,用到mysql,在導入導出數據時,遇到一些亂碼問題,好不容易解決了,記錄一下,以備查看。

  一、導出數據。

  先說明一下自己的環境:Mac OS X 10.8.3, MySQL Community Server 5.6.10, MySQL Workbench 5.2.47。

  我想把本機數據庫內的數據遷移到另一台機器上,於是使用Workbench中自帶的import/export功能,其實就是調用mysqldump。不幸的是,出現了版本不一致的錯誤。

Mysql中文亂碼及導出sql語句和Excel的相關解決方法  三聯

  錯誤沒治了,最終找到解決方案,可以指定mysql的mysqldump,路徑為:/usr/local/mysql/bin/mysqldump,這樣是把數據導出為sql語句的insert語句。

  由於需要是把數據導出為excel,所以通過mysql控制台使用select語句把數據導出到excel文件中。

  下面先介紹怎麼導出為excel文件,然後介紹怎麼導出為insert語句。

  1、通過終端操作。

  1 cd /usr/local/mysql/bin/

  2、到達bin目錄後,可以ls -l命令看看當前目錄有哪些程序可以用,這裡先用mysql,命令格式為:

  mysql -h主機IP -u用戶名 -p密碼

  如:

  1 ./mysql -hlocalhost -uroot -p123456

  注意前面加的"./"。

  這時就進入mysql命令控制台,終端上顯示為:

  3、然後通過show databases命令查看當前的所有數據庫,使用use命令選擇進入某個數據庫,注意每個命令都要以英文分號“;”結束。

  4、使用sql語句導出需要的數據,sql語句不限於單個表的查詢。由於我的數據庫編碼是utf8格式,而office默認的編碼則是gb2312,所以當某個字段中包含中文時,導出到excel後,中文內容是會亂碼的,此時需要convert轉換編碼,具體使用方式:

  我試著把文件保存到桌面,但始終提示沒有權限,應該是和用戶有關吧,無視了。當使用“./”這個路徑保存時,實際是保存到了/usr/local/mysql/data下面。打開看看,喲西,不亂碼了。

copyright © 萬盛學電腦網 all rights reserved