MySQL CSV-导入无法匹配列的值

标签 mysql sql csv import

我遇到以下情况: 我通过“LOAD DATA LOCAL INFILE”将.csv导入mysql。

一切正常,但有一列有点损坏。

它充满了“类别名称”,例如“LFP-Graphic Art”和“Papiere、Blöcke、Formulare”。

如果我在表中查找带有简单语句的条目,我会得到零结果:

SELECT * FROM t_category
WHERE category = 'LFP-Graphic Art';

如果我让它显示表格中的所有内容,我可以看到确实有类别为“LFP-图形艺术”的条目。
我也已经在寻找空格,但这似乎不是问题。

我猜导入出了问题?
我将 .csv 文件格式化为 UTF8,无 BOM。

编辑:
当我更新数据集并仅删除一个字符时,选择语句可以正常工作。

csv 中的示例行:

active;supplier;SUPPLIER_AID;categorie
1;kb;10101;FP-Graphic Art

和 MySQL 表:

t_import

name, type, collation
active, tinyint(4), latin1_general_ci
supplier, char(255), latin1_general_ci
SUPPLIER_AID, char(255), latin1_general_ci
category, varchar(255), utf8_general_ci

最佳答案

尝试检查“行终止于”语句。 由于有问题的字段是最后一个字段,因此您可能错误地加载了回车符。

关于MySQL CSV-导入无法匹配列的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30445699/

相关文章:

mysql - 连接来自同一个表的多个 Sql 语句

java - 使用复合 id hibernate 进行动态更新

python写入文件正在中断

python-3.x - 如何在 Python 中将制表符分隔的文本文件转换为 csv 文件

mysql - Docker配置文件导入,带有apache和mysql的生产配置

PHP更新记录时程序异常终止

php - 查询列中的多个值

mysql - MATCH ... AGAINST 未找到行

mysql - SQL 计数情况 else 0 与 null

python - 在 csv 文件中的所有行组合中应用字符串匹配逻辑