我有一个CSV文件9列,我有一个11列的MySQL表。Mysql CSV加载infile
CSV文件看起来像:
col1, col2, col3, col4, col5, col6, col7, col8, col9
和MySQL表如下所示:
col1, col2, col3, col4, col5, col6, col7, col8, col9, col10, col11
我需要的脚本来忽略这两个错误(但需要)的MySQL列。
需要在进口被忽视MySQL的栏目有:DB_ID & nice_date =)
这是我到目前为止有:
$sql = 'LOAD DATA LOCAL INFILE "../csvtemp/test.csv"
INTO TABLE sample
FIELDS TERMINATED BY ","
OPTIONALLY ENCLOSED BY """"
IGNORE 1 LINES'
;
你有没有想过使用PHP fgetcsv()读取的每一行CSV文件到数组中?然后你可以将数组插入查询中。它比LOAD DATA代码更多一点,但它确实是正确的。 –
另一种替代方法 - ALTER TABLE删除多余的列,LOAD DATA,然后ALTER TABLE以将列添加回来。 –
我想澄清,其中有九个,有十一个。我认为叙述与示例不符;-) –