我正在尝试从.csv文件中加载数据infile 在mysql中,其中一列有一个指向我PC上文件夹的链接。我已经研究出能够使Mysql读取c:\我需要使用2个正斜杠c:\并在文本末尾放置一个。但是现在它在文本的开头放置一个" ,只会加载一行.csv。有没有人有任何我可以用来解决这个问题的提示
答案 0 :(得分:0)
这是一个CSV文件示例 -
1,c:\\
2,c:\\dir
3,c:\\new dir
这是一个导入数据的表 -
CREATE TABLE table1 (
id int(11) NOT NULL AUTO_INCREMENT,
path varchar(255) DEFAULT NULL,
PRIMARY KEY (id)
);
这是我们的LOAD DATA查询 -
LOAD DATA LOCAL INFILE 'path.txt' INTO TABLE table1
FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n';
输出 -
SELECT * FROM table1;
1 c:\
2 c:\dir
3 c:\new dir
答案 1 :(得分:0)
您好,感谢您的回复 这是.CSV文件的格式
\N 1 Copper Red Dish 001 Shallow Copper Red dish f 450 50cm diame c:\\catalog\\bcpot020.jpg,
\N 1 Copper Red Bottle 001 Copper Red bottle form. 550 60cm tall c:\\catalog\\bcpot003.jpg,
\N 10 Chun bowl 001 Blue Chun bowl with tea s 350 20 cm diam c:\\catalog\\bcpot006.jpg,
\N 2 Moonscape bowl 001 High Calcium bowl with wh 320 40cm diame c:\\catalog\\bcpot009.jpg,
\N 3 Crystalline bowl 001 Blue Green Crystalline gl 250 20 cm diam c:\\catalog\\bcpot013_thumb.jpg,
这是将其运行到MYSQL
的SQL文件SET foreign_key_checks = 0;
USE BazzaarCeramics_db;
LOAD DATA LOCAL INFILE 'C:\\Data\\Product.csv'
INTO TABLE Product
FIELDS TERMINATED BY ','
LINES TERMINATED BY 'r\N'
(`ProductID`,`ProductGlazeTypeCode`,`ProductTitle`,`ProductDescription`,`ProductPrice`,`ProductSize`,`ProductRelativePath`);
SET foreign_key_checks = 1;
这是我运行时返回的内容。
21 1 Copper Red Dish 001 Shallow Copper Red dish f 450.00 50cm diame "c:\catalog\bcpot020.jpg
请注意“地址开头的”。 如果我在地址的末尾放置一个逗号,我会得到这个。如果我不做逗号,它会在地址末尾放置一个N.
希望这有帮助