你好,我是网络开发的新手。
我试图使用“表数据导入向导”将CSV文件导入mysql工作台。然而,我已经读取了我的文件需要是一个CSV (MS),否则我得到以下错误:无法分析文件。请尝试更改编码类型。如果这没有帮助,那么文件可能不是: csv,或者文件是空的。
我不能使用CSV (MS),因为我的数据包含许多不同的特殊字符,包括来自北欧欧洲的字符。当我将CSV (逗号分隔)转换为CSV (MS)时,特殊字符不再相同。
是否有方法将CSV逗号分隔文件导入mysql工作台?或者,是否有更好的方法将我的数据放到表中,比如在MS文件中保持特殊字符不变?
发布于 2020-07-11 17:16:33
你的CSV应该能正常工作。你只需要Load Data Infile
但是您可能需要定义这些设置。
LOAD DATA INFILE 'c:/tmp/discounts.csv'
INTO TABLE discounts
-- comma seperated? maybe pipes '|'?
FIELDS TERMINATED BY ','
-- what surrounds input and is it optional? then add OPTIONALLY before ENCLOSED
ENCLOSED BY '"'
-- what is at the end of files
LINES TERMINATED BY '\n'
-- how many header rows are there, if any?
IGNORE 1 ROWS;发布于 2020-07-11 17:59:34
您可以在没有问题的情况下导入常规CSV,只需确保编码匹配即可。
有点像
LOAD DATA
INFILE yourfile.csv
INTO TABLE tablename
FIELDS
TERMINATED BY ','
ENCLOSED BY '"'
LINES
TERMINATED BY '\n'
IGNORE 1 LINES应该行得通。如果您的CSV没有标头,请从代码中删除ignore 1 lines行。如果格式不同,则相应地更改包围字符和终止字符。
您可以在手册。中查找确切的语法。
https://stackoverflow.com/questions/62849866
复制相似问题