[英]mysql load data infile inserting double quotes
嗨,我知道这个问题不仅是出于我的考虑,也是为了每个使用mysql LOAD DATA INFILE的用户。
我只想知道为什么每次使用装入数据infile导入数据时都收到双引号(“”)? 来自csv的数据已成功添加到数据库中,但是在该值中有一个双引号。 例如。
“ value1” | “ value2” | “值3”
有什么帮助吗? 这是我的mysql脚本。
echo $mysql = "LOAD DATA LOCAL INFILE '".$path ."'
REPLACE INTO TABLE table
FIELDS
TERMINATED BY ','
LINES
TERMINATED BY '\\n'
IGNORE 1 LINES
(`column1`, `column2`, `column3`, `column4`..)";
$query = mysqli_query($link, $mysql) or die(mysqli_error($link));
谢谢
我从您的问题中猜测,您的infile值与此类似,
"column1","column2","column3","column4"
"column1a","column2a","column3a","column4a"
因为在你的mysql的语句,你只说,字段由一个结束,
它会读取高达MySQL的引擎的值找到,
,因此qoutes。
声明字段是否被某些东西包围的mysql语法如下所示;
FIELDS ENCLOSED BY '"'
您的新查询看起来像,
"LOAD DATA LOCAL INFILE '".$path ."'
REPLACE INTO TABLE table
FIELDS
TERMINATED BY ',',
ENCLOSED BY '"'
LINES
TERMINATED BY '\\n'
IGNORE 1 LINES
(`column1`, `column2`, `column3`, `column4`..)"
这告诉MySQL的引擎来寻找的人物"
,并采取该值作为字段值。
您可以在mysql网站上阅读有关它的更多信息。
http://dev.mysql.com/doc/refman/5.1/en/load-data.html
希望这对您有所帮助!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.