将csv导入mysql(代码列表)

时间:2014-12-04 13:13:13

标签: php mysql csv

所以我有一个准确的代码列表(100,000),我把它们放在一个csv文件中。

我想将这些代码放在数据库中,以便以后可以使用我的php脚本来获取它们。 不过我的问题是如何从右表中的文件中获取我的代码?

这就是我的数据库目前的样子。

http://i.stack.imgur.com/HMxqC.png

文件中的代码需要插入表格代码中。 希望有人可以帮我解决这个问题。

2 个答案:

答案 0 :(得分:1)

您可能会觉得这很有帮助(请调整表格及其他名称):

LOAD DATA INFILE 'codes.csv'
INTO TABLE codes
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 ROWS; 
(@id,code,@active)
SET id = null;
SET active = '1'

更多细节: http://www.mysqltutorial.org/import-csv-file-mysql-table/

答案 1 :(得分:1)

试试这个:

您可以上传您的csv文件并发布。然后使用这个功能。

这是PHP代码:

function get_csv_file($filename){
if (($handle = fopen($filename, "r")) !== false) {
$filesize = filesize($filename);
$firstRow = true;
$aData = array();
while (($data = fgetcsv($handle, $filesize, ";")) !== false) {
    if($firstRow) {
        $aData = $data;
        $firstRow = false;
    } else {
        for($i = 0;$i < count($data); $i++) { //only for csv file
            if($data[$i] != '')
            $aData[] = $data[$i];
        }
    }
}
//print_r($aData);
fclose($handle);
$finalscrap = array_unique($aData);
     // echo "<pre>";
     // print_r($finalscrap);
     // echo "<pre/>";
return $finalscrap;   //this is your record as array format
}
}