PHP實現CSV大文件數據導入到MYSQL數據庫

注意:本文出自 “阿飛”的博客 ,如果要轉載本文章,請與作者聯繫!


不止一次有同事問我同樣的問題了,在這裏提供一種PHP最簡單的實現。如果大家有更好的方式,請分享:)


代碼如下:

<?php
$db_host="192.168.1.10";
$db_user="root";
$db_psw="11111";
$db_name="csvimport";

 $conn = mysql_connect($db_host,$db_user,$db_psw) or die("Connection occur error");
 mysql_select_db($db_name,$conn) or die("Connection occur error");
 mysql_query("set names utf-8");


mysql_query("LOAD DATA INFILE '/root/bill20120813121249.csv' INTO TABLE `billdata` FIELDS TERMINATED BY ',' ENCLOSED BY '\"' ESCAPED BY '\"' LINES TERMINATED BY '\r\n' IGNORE 1 LINES;") or die ('Error: '.mysql_error ());

?>

以上代碼僅僅是實現的原型,大家可以根據自己的需要來改進、完善。

關於MYSQL中LOAD DATA INFILE更多使用請參考這裏:http://dev.mysql.com/doc/refman/5.1/en/load-data.html


附:

如果遇到這個問題/異常:

Error: The used command is not allowed with this MySQL version


請修改:

$dbc=mysql_connect($db_host, $db_user, $db_psw) or die(_ERROR15.": ".mysql_error());

爲 :

$dbc=mysql_connect($db_host, $db_user, $db_psw, false,128) or die(_ERROR15.": ".mysql_error());








發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章