gpt4 book ai didi

php - mysql加载数据infile插入双引号

转载 作者:行者123 更新时间:2023-12-01 11:45:57 24 4
gpt4 key购买 nike

您好,我知道这个问题不仅是为了我,也是为了所有使用 mysql LOAD DATA INFILE 的人。

我只想知道为什么我每次使用加载数据文件导入数据时都会收到这个 ("") 双引号?来自 csv 的数据已成功添加到数据库中,但在实例中,值中有双引号。例如。

“值1” | “值(value)2” | “值 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

希望这对您有所帮助!

关于php - mysql加载数据infile插入双引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15362860/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com