方法一
把Excel匯入mysql資料表,首先建立資料表,建立欄位,欄位數量和excel的表格列數量保持一致。
然後把Excel檔案另存新檔csv或者txt文字檔放在案頭上面
然後執行如下命令:
一:儲存為csv匯入方法
load data local infile 'C:\\Users\\xwidea\\Desktop\\areaid_v.csv' into table 資料表名稱 fields terminated by ','
二:儲存為txt文字檔匯入方法
load data local infile 'C:\\Users\\xwidea\\Desktop\\areaid_v.txt' into table 資料表名稱 fields terminated by '\t'
方法二,利用程式如php
PHP-ExcelReader,下載地址: http://sourceforge.net/projects/phpexcelreader
說明:
PHP將EXCEL匯入MYSQL的測試環境:MYSQL資料庫採用utf8編碼.匯入EXCEL文檔是xls格式,經過測試,xlsx 格式[excel 2007]也OK.
測試環境:MYSQL資料庫採用utf8編碼.匯入EXCEL文檔是xls格式,經過測試,xlsx 格式[excel 2007]也OK.
文中紅色標註為需要注意的地方,請替換成你配置好的資料,如資料庫配置等。運行實現匯入。
以下是我貼出的詳細代碼,其中test.php為我寫的測試檔案,reader.php和oleread.inc檔案是從上面提供的網址中下載的。
1. test.php
以下為引用的內容:
require_once 'reader.php'
// ExcelFile($filename, $encoding);
$data = new Spreadsheet_Excel_Reader();
// Set output Encoding.
$data->setOutputEncoding('gbk');
//”data.xls”是指要匯入到mysql中的excel檔案
$data->read('data.xls');
@ $db = mysql_connect('localhost', 'root', ?') or
die("Could not connect to database.");//串連資料庫
mysql_query("set names 'gbk'");//輸出中文
mysql_select_db('mydb'); //選擇資料庫
error_reporting(E_ALL ^ E_NOTICE);
for ($i = 1; $i <= data-="">sheets[0]['numRows']; $i++) {
//以下注釋的for迴圈列印excel表資料
/*
for ($j = 1; $j <= data-="">sheets[0]['numCols']; $j++) {
echo """.$data->sheets[0]['cells'][$i][$j]."",";
}
echo "n";
*/
//以下代碼是將excel表資料【3個欄位】插入到mysql中,根據你的excel表欄位的多少,改寫以下代碼吧!
$sql = "INSERT INTO test VALUES('".
$data->sheets[0]['cells'][$i][1]."','".
$data->sheets[0]['cells'][$i][2]."','".
$data->sheets[0]['cells'][$i][3]."')";
echo $sql.'
'
$res = mysql_query($sql);
}
?>