You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

UTF16LE编码TSV文件导入MariaDB出现字符间隔问题求助

解决UTF16LE编码TSV文件导入MariaDB的字符乱序问题

字符间出现空格的核心原因是未指定文件编码为UTF16LE,MariaDB默认用单字节编码解析双字节的UTF16LE数据,导致每个字符的高字节被识别为空格(通常是0x00字节)。以下是正确的导入语句及关键说明:

正确导入语句

LOAD DATA LOW_PRIORITY LOCAL INFILE 'C:\\xampp\\mysql\\data\\test\\log2.csv'
IGNORE INTO TABLE `test`.`testova2`
CHARACTER SET utf16le
FIELDS TERMINATED BY '\t'
LINES TERMINATED BY '\r\n'
IGNORE 1 LINES
(`USER`, `DATE`, `TIME`, `TESTRESULT`, `ERRORCODE`);

关键参数说明

  • CHARACTER SET utf16le:强制数据库以UTF16LE编码解析输入文件,正确识别双字节字符
  • FIELDS TERMINATED BY '\t':明确字段分隔符为制表符(符合TSV文件格式)
  • LINES TERMINATED BY '\r\n':适配Windows系统的换行符,若文件是Linux/macOS生成,可改为'\n'
  • IGNORE 1 LINES:跳过1行表头(原文件仅1行表头,你之前写的IGNORE 4 LINES会错误跳过前4行数据)

额外注意事项

如果设置行终止符后仍有异常,可通过文本编辑器查看文件实际换行符类型再调整;同时确保目标表的字符集(如utf8mb4)兼容UTF16LE的字符,避免后续出现其他乱码问题。

内容的提问来源于stack exchange,提问作者user15969669

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 05:50:25