Error number: MY-013980; Symbol: ER_BULK_PARSER_UNEXPECTED_CHAR_AFTER_COLUMN_TERMINATOR_LOG; SQLSTATE: HY000
Message: Unexpected characters after column terminator found at row %ld in file ‘%s’.
MY-013980; ER_BULK_PARSER_UNEXPECTED_CHAR_AFTER_COLUMN_TERMINATOR_LOG; HY000 错误是MySQL在推断bulk加载进程中发生的错误。当在数据中遇到字符(通常为行终止符)来终止列值之后,发现其他字符时发生的。
这会发生的情况,有时候sql语句中有多余的字符,也可能是字段分隔符引起的。
解决此问题的最简单方法就是检查您的语句,以查看哪些字符导致错误。您需要确保在每行行尾之后没有多余的字符。此外,如果您正在使用CSV字段分隔令牌,则应适当使用“围绕单词定界符”,以防止字段分隔符被解释为直接查询。你可以使用下面的语句来添加定界符
加载数据:Optionally启用围绕多字段定界符,可以是一个或多个字符: `从文件 中..
另外,您还可以执行以下操作以检查测试数据:
1. 仔细查看有问题的行,以寻找不正确的字符;
2. 如果您在某个列中遇到了这种情况,请尝试将CRLF更改为LF(在Linux系统上)或删除行尾的空格。
此外,您也可以完全检查您的SQL语句以确保它们没有任何可能导致错误的多余字符。此外,你还可以尝试重新格式化语句,以使它们更容易阅读并且对错误有更良好的检查/调试结果。