【发布时间】:2017-02-13 14:04:10
【问题描述】:
我必须使用 PHP 代码在 MySql 数据库的表中导入 CSV 文件。 CSV 文件如下:
“2016-09-02”、“100.01”、“4005.09”、“5000”、“1.09”、“120.09”、“100.5”、“200.77” “2016-09-03”、“150.01”、“4205.09”、“5600”、“1.10”、“150.09”、“300.5”、“300.77”
文件权限为 755。
表格字段为 9(包括 id 字段):第一个是日期时间字段,其他是浮点字段。 我使用的代码如下,它将在服务器站点上运行:
$csvFile = "../scripts/tabella.csv";
$db = @mysql_connect('**.***.**.***', 'Sql******', '*******');
@mysql_select_db('Sql******_*');
$query = 'LOAD DATA LOCAL INFILE \' '. $csvFile .' \' INTO TABLE mytable FIELDS TERMINATED BY \',\' ENCLOSED BY \'"\' LINES TERMINATED BY \'\n\' ';
if(!mysql_query($query)){
die(mysql_error());
}
mysql_close($db);
mysql_error 返回第一个错误:'file not found'。 CSV 文件位于“www.mysite.it/mysite/scripts/tabella.CSV”中。它的权限是 755。我尝试使用 realpath($csvFile) 函数,但错误始终相同。
我尝试在 localhost 中运行相同的查询,但没有出现此错误,但表中只插入了一条记录,其字段值为 NULL。
你能帮帮我吗? 谢谢!
【问题讨论】:
-
你能检查一下你是否有
FILE权限吗?你需要这个权限才能执行LOAD DATA -
CSV 文件权限为 755